Làm cách nào để thay đổi phiên bản PHP cho apache2?
Gần đây tôi đã thảo luận về nhiều chủ đề liên quan đến cấu hình của các máy chủ web khác nhau và hoạt động của các ứng dụng PHP như WordPress. Các máy chủ web, chẳng hạn như OpenLiteSpeed, cho phép bạn thay đổi phiên bản bằng Bảng điều khiển quản trị viên web, nhưng nếu bạn đang sử dụng Apache, đây là cách chuyển đổi phiên bản PHP trên Linux Show
Phiên bản PHPLàm cách nào để kiểm tra phiên bản PHP trong Linux?Trước tiên, hãy xác định phiên bản PHP hiện đang được cài đặt và cấu hình. Tôi đang sử dụng Debian 11 cho phần trình diễn này. Tất cả các hướng dẫn được đưa ra trong bài viết này sẽ hoạt động mà không gặp trở ngại nào trên bất kỳ bản phân phối Linux nào Điều duy nhất cần lưu ý là phiên bản bạn đang cố gắng chuyển sang đã được cài đặt đúng cách
Cài đặt phiên bản PHP cụ thểCó một hướng dẫn chuyên sâu trên LinuxAndUbuntu về cách cài đặt PHP 8. x trên các bản phân phối Linux dựa trên Debian và Ubuntu. Nếu bạn đang cài đặt bất kỳ phiên bản nào trước đó, chẳng hạn như PHP 7. 4, không cần thêm bất kỳ kho lưu trữ nào
Thay đổi phiên bản PHPKhi bạn đã cài đặt nhiều phiên bản PHP, chúng ta có thể sử dụng tập lệnh a2dismod và a2enmod để tắt phiên bản PHP và bật phiên bản PHP khác. Cả hai tập lệnh này đều có thể bật và tắt bất kỳ mô-đun apache nào Vô hiệu hóa phiên bản PHP hiện tạiGiả sử bạn có PHP 8. 1 hiện được đặt làm phiên bản PHP mặc định, đây là cách tắt nó –
Kích hoạt phiên bản PHP mớiBây giờ chúng ta có thể chuyển sang bất kỳ phiên bản PHP đã cài đặt nào bằng a2enmod –
Đừng quên khởi động lại máy chủ apache sau khi chuyển đổi phiên bản PHP
Các lỗi thường gặp với a2enmodMột số người dùng có thể nhận được 'bash. a2dismod. lỗi không tìm thấy lệnh [email protected]:~$ a2dismod php8.1 bash: a2dismod: command not found Chủ yếu là lỗi xảy ra khi chạy lệnh mà không có sudo hoặc root Đây là kết quả bạn nhận được khi thực hiện thành công lệnh – [email protected]:~$ sudo a2dismod php8.1 Module php8.1 disabled. To activate the new configuration, you need to run: systemctl restart apache2 Tương tự với a2enmod. Chạy nó với sudo hoặc với tư cách người dùng root Một lỗi khác mà người dùng có thể gặp phải là “ERROR. Mô-đun php7. 3 không tồn tại. ” [email protected]:~$ sudo a2enmod php7.3 ERROR: Module php7.3 does not exist! Lỗi này có nghĩa là phiên bản PHP mà người dùng đang cố kích hoạt chưa được cài đặt. Trong trường hợp này, php7. 3 chưa được cài đặt Tôi đã sử dụng Apache làm máy chủ web phát triển cục bộ mặc định kể từ khi tôi bắt đầu viết mã PHP vào năm 2006. Hồi đó, Nginx mới được 2 tuổi và mọi máy chủ web đều chạy Apache, vì vậy điều đó thật dễ hiểu. Trong những năm qua, tôi đã thích Nginx hơn trên các máy chủ web của mình, nhưng tôi vẫn thích Apache cục bộ hơn vì tôi thấy nó dễ sử dụng và cấu hình hơn Nhìn chung, tôi luôn có thể sử dụng phiên bản ổn định mới nhất của PHP với Apache cho tất cả các dự án web của mình. Tuy nhiên, tốc độ mà các phiên bản PHP hiện đang được phát hành có nghĩa là trong một số trường hợp (chủ yếu liên quan đến WordPress), tôi không thể luôn chạy phiên bản mới nhất cục bộ Vì vậy, trong bài đăng này, tôi sẽ trình bày chi tiết cách cài đặt phiên bản ổn định mới nhất của bản phát hành PHP hiện tại (hiện tại là 8. 1) cùng với phiên bản ổn định mới nhất của bản phát hành PHP trước đó (7. 4) sử dụng Apache trên Ubuntu Thiết lập ban đầu và PHP 8. 1Cách ổn định nhất để cài đặt nhiều phiên bản PHP trên hệ thống Debian hoặc Ubuntu là sử dụng kho PPA cho Debian hoặc Ubuntu mà Ondřej Surý duy trì. Ondřej đã duy trì các PPA chính thức này cho Debian kể từ PHP 5, vì vậy tôi thực sự khuyên bạn nên hỗ trợ công việc của anh ấy Cài đặt kho lưu trữ dưới dạng PPA trên hệ thống dựa trên Debian của bạn được thực hiện bằng lệnh 9
Mặc dù không bắt buộc nhưng bạn cũng nên cài đặt kho lưu trữ cho phiên bản Apache2 mà Ondřej cung cấp 0Cuối cùng, hãy cập nhật hệ thống của bạn để đảm bảo rằng bạn đang tải phần mềm từ kho lưu trữ mới được thêm vào ________số 8Sau đó, nếu bạn cài đặt PHP và tất cả các mô-đun và gói PHP cần thiết, PHP 8. 1 sẽ được cài đặt làm phiên bản PHP mặc định của bạn 2Nếu bạn cần thêm bất kỳ cài đặt cấu hình PHP cụ thể nào vào bản cài đặt của mình, tôi khuyên bạn nên thực hiện việc này trong một người dùng tùy chỉnh. ini mà bạn có thể tạo như ở đây 3Chuyển toàn bộ máy chủ sang sử dụng PHP 7. 4Bây giờ hệ thống của bạn đang chạy phiên bản PHP mới nhất, bạn có thể cài đặt các phiên bản khác. Bạn nên cài đặt lại phiên bản chính ổn định nhất trước đó, trong trường hợp này là PHP 7. 4. Lưu ý rằng lệnh này giống như lệnh trước, chỉ với số phiên bản cụ thể 4Điều này sẽ cho phép bạn cài đặt cả hai phiên bản, nhưng chỉ PHP 8. 1 đang hoạt động. Để chuyển phiên bản PHP đang hoạt động của bạn sang PHP 7. 4, bạn chạy các lệnh 20 này 6Nếu bạn muốn PHP 8 của bạn. 1 cài đặt tùy chỉnh có sẵn cho PHP 7. 4, bạn có thể sao chép người dùng. tập tin ini 7Để chuyển về PHP 8. 1, chỉ cần chạy các lệnh 20, nhưng thay đổi số phiên bản thành 8. 1Chạy PHP8. 1 và PHP7. 4 trên cùng một máy chủĐôi khi, bạn có thể muốn có PHP 8. 1 làm mặc định, nhưng bật PHP 7. 4 cho một trang web cụ thể. Điều này có thể thực hiện được bằng cách sử dụng Trình quản lý quy trình FastCGI cho PHP, hay còn gọi là 22. Hiệu quả những gì bạn làm là cài đặt 22 cho 7. 4, sau đó bạn có thể định cấu hình tệp máy chủ ảo Apache của trang web của mình để đặt phiên bản PHPĐầu tiên, cài đặt các gói cần thiết cho PHP 7. 4 1Sau đó, bắt đầu 24 3Kiểm tra trạng thái bằng cách chạy lệnh này 00Bạn sẽ thấy một cái gì đó như thế này 01Tiếp theo, kích hoạt proxy FastCGI 02Nếu mọi thứ hoạt động, bạn sẽ thấy một cái gì đó như thế này 03Khởi động lại Apache để đảm bảo mọi thứ được thiết lập chính xác 04Bước cuối cùng là truy cập tệp máy chủ ảo Apache của trang web của bạn và thêm PHP 7. 4 khối vào khối VirtualHost 05 06Điều này yêu cầu Apache sử dụng php7. 4-fpm cho trang web này. Khi bạn đã lưu tệp đó, hãy khởi động lại Apache 04Nếu bạn đang thiết lập điều này cho môi trường phát triển cục bộ, bạn có thể đã đặt người dùng Apache thành người dùng gia đình của mình để Apache đọc các tệp cho bất kỳ trang web cục bộ nào. Nếu đây là trường hợp, bạn có thể cần phải cập nhật www. conf cho php7. nhóm 4-fpm và đặt người dùng thành cùng một người dùng hệ thống 08 09Cuối cùng, bạn sẽ cần đặt người dùng tùy chỉnh. ini cho php7. quy trình 4-fpm (hoặc cách khác sao chép một trong những người dùng hiện tại của bạn. tập tin ini) 0Và khởi động lại php7. 4-fpm để những thay đổi này có hiệu lực 1Cài đặt các phiên bản PHP bổ sungVới php-fpm, bạn có thể cài đặt các phiên bản PHP bổ sung và chỉ cần kích hoạt chúng trên mỗi trang web. Hãy cài đặt PHP 8. 0 qua fpm Cài đặt các gói phiên bản cụ thể 2Bắt đầu dịch vụ php-fpm cụ thể 3Đặt người dùng nhóm PHP 4Cuối cùng, đặt trình xử lý tệp PHP trong tệp máy chủ ảo Apache của trang web, đảm bảo sử dụng đúng phiên bản php-fpm Làm cách nào để thay đổi phiên bản Apache2 PHP?Thay đổi phiên bản PHP
. Cả hai tập lệnh này đều có thể bật và tắt bất kỳ mô-đun apache nào. use a2dismod and a2enmod scripts to disable a PHP version and enable another PHP version. Both these scripts can enable and disable any apache module.
Làm cách nào để thay đổi phiên bản PHP trong apache2 Ubuntu?Chạy các phiên bản PHP khác nhau với Apache trên Ubuntu . Thiết lập ban đầu và PHP 8. 1. . Chuyển toàn bộ máy chủ sang sử dụng PHP 7. 4. . Chạy PHP8. 1 và PHP7. 4 trên cùng một máy chủ. . Cài đặt các phiên bản PHP bổ sung. . Xóa PPA tùy chỉnh Làm cách nào để bật php7 4 trong apache2?Để cài đặt PHP7. 4 trước tiên chúng ta cần thêm kho lưu trữ apt ondrej/php có PHP 7. 4 và các phần mở rộng PHP cần thiết khác để thực thi thành công tập lệnh PHP của bạn . Khi kho lưu trữ apt được thêm vào, chúng ta có thể cài đặt PHP. Sau đó cài đặt phần còn lại của hỗn hợp tiện ích mở rộng có thể được yêu cầu.
Làm cách nào để định cấu hình apache2 để sử dụng PHP?Cài đặt PHP trên Apache 2 . Cài đặt Apache. . Tải xuống các nguồn PHP mới nhất. . Trích xuất mã nguồn. . Đặt tùy chọn trình biên dịch (tùy chọn). Cấu hình php với autoconf. . Biên dịch PHP. . Cài đặt PHP. . Yêu cầu apache tải mô-đun Chỉnh sửa httpd. conf /usr/local/apache2/conf/httpd. conf với trình soạn thảo văn bản của bạn |