Hiện tại, PHP8. 2 không được cung cấp trong kho phần mềm mặc định của Debian hoặc Ubuntu, nhưng PHP 8. 2 gói có sẵn từ kho lưu trữ do Ondřej Surý duy trì. Kho lưu trữ của Ondrej là kho lưu trữ chính và cập nhật nhất cung cấp các gói PHP và phần mở rộng PECL cho các hệ điều hành dựa trên Debian và Ubuntu và được sử dụng cho tất cả PHP. Xem hướng dẫn cài đặt PHP trên các hệ thống này
Có gì mới và thay đổi trong PHP 8. 2
PHP8. 2 mang đến một danh sách lành mạnh các tính năng mới cho bảo mật và hiệu suất, đồng thời một số tính năng không dùng nữa có thể đưa ra cảnh báo bổ sung trên các hệ thống cũ hiện tại vì nó không dùng các thuộc tính động, cùng với một số tính năng không dùng nữa
Để biết danh sách đầy đủ những gì mới và thay đổi trong PHP 8. 2, xem PHP 8. 2. Có gì mới và thay đổi
Các thay đổi về phần mở rộng và INI đáng chú ý
PHP8. 2 không bao gồm bất kỳ thay đổi đáng chú ý nào sẽ ảnh hưởng đến quá trình cài đặt hoặc nâng cấp. PHP8. 2 trên thực tế có thêm một tiện ích mở rộng mới có tên là
sudo dpkg -l | grep php | tee packages.txt
sudo apt install apt-transport-https lsb-release ca-certificates wget -y
sudo wget -O /etc/apt/trusted.gpg.d/php.gpg //packages.sury.org/php/apt.gpg
sudo sh -c 'echo "deb //packages.sury.org/php/ $[lsb_release -sc] main" > /etc/apt/sources.list.d/php.list'
sudo apt update
# Expand the curly braces with all extensions necessary.
sudo apt install php8.2 php8.2-cli php8.2-{bz2,curl,mbstring,intl}
sudo apt install php8.2-fpm
# OR
# sudo apt install libapache2-mod-php8.2
sudo a2enconf php8.2-fpm
# When upgrading from older PHP version:
sudo a2disconf php8.1-fpm
## Remove old packages
sudo apt purge php8.1*
5, nhưng tiện ích mở rộng này luôn là một tiện ích mở rộng đi kèm và không thể biên dịch PHP nếu không có nóMột thay đổi đáng chú ý trong các tệp và cài đặt INI của PHP là PHP 8. 2 đưa ra cảnh báo khi các cài đặt INI có định dạng sai đã bị tắt tiếng trong các phiên bản PHP cũ. Xem PHP 8. 2. INI Phân tích cảnh báo để biết thêm thông tin
Đứng lên. Các hành động phá hoại tiềm ẩn phía trước
Các hành động sau đây được thực hiện dưới dạng7 và yêu cầu cấp độ quyền đó để tiếp tục. Các cảnh báo thông thường khi thực hiện bất kỳ thay đổi nào trên toàn hệ thống cũng được áp dụng tại đây. Đảm bảo sao lưu hệ thống và kiểm tra các bản sao lưu trước khi tiếp tụcsudo dpkg -l | grep php | tee packages.txt sudo apt install apt-transport-https lsb-release ca-certificates wget -y sudo wget -O /etc/apt/trusted.gpg.d/php.gpg //packages.sury.org/php/apt.gpg sudo sh -c 'echo "deb //packages.sury.org/php/ $[lsb_release -sc] main" > /etc/apt/sources.list.d/php.list' sudo apt update # Expand the curly braces with all extensions necessary. sudo apt install php8.2 php8.2-cli php8.2-{bz2,curl,mbstring,intl} sudo apt install php8.2-fpm # OR # sudo apt install libapache2-mod-php8.2 sudo a2enconf php8.2-fpm # When upgrading from older PHP version: sudo a2disconf php8.1-fpm ## Remove old packages sudo apt purge php8.1*
Bên dưới các lệnh dòng lệnh để cài đặt/nâng cấp lên PHP 8. 2, để biết các bước chi tiết, hãy truy cập
Ubuntu
sudo dpkg -l | grep php | tee packages.txt
sudo add-apt-repository ppa:ondrej/php # Press enter when prompted.
sudo apt update
sudo apt install php8.2,php8.2-cli,php-8.2{bz2,curl,mbstring,intl}
sudo apt install php8.2-fpm
# OR
# sudo apt install libapache2-mod-php8.2
sudo a2enconf php8.2-fpm
# When upgrading from older PHP version:
sudo a2disconf php8.1-fpm
## Remove old packages
sudo apt purge php8.1*
Debian
sudo dpkg -l | grep php | tee packages.txt
sudo apt install apt-transport-https lsb-release ca-certificates wget -y
sudo wget -O /etc/apt/trusted.gpg.d/php.gpg //packages.sury.org/php/apt.gpg
sudo sh -c 'echo "deb //packages.sury.org/php/ $[lsb_release -sc] main" > /etc/apt/sources.list.d/php.list'
sudo apt update
# Expand the curly braces with all extensions necessary.
sudo apt install php8.2 php8.2-cli php8.2-{bz2,curl,mbstring,intl}
sudo apt install php8.2-fpm
# OR
# sudo apt install libapache2-mod-php8.2
sudo a2enconf php8.2-fpm
# When upgrading from older PHP version:
sudo a2disconf php8.1-fpm
## Remove old packages
sudo apt purge php8.1*
1. Liệt kê và lưu trữ danh sách các phần mở rộng PHP
Lệnh sau liệt kê tất cả các gói liên quan đến PHP tồn tại trên hệ thống hiện tại và lưu chúng vào tệp văn bản có tên
sudo dpkg -l | grep php | tee packages.txt
sudo apt install apt-transport-https lsb-release ca-certificates wget -y
sudo wget -O /etc/apt/trusted.gpg.d/php.gpg //packages.sury.org/php/apt.gpg
sudo sh -c 'echo "deb //packages.sury.org/php/ $[lsb_release -sc] main" > /etc/apt/sources.list.d/php.list'
sudo apt update
# Expand the curly braces with all extensions necessary.
sudo apt install php8.2 php8.2-cli php8.2-{bz2,curl,mbstring,intl}
sudo apt install php8.2-fpm
# OR
# sudo apt install libapache2-mod-php8.2
sudo a2enconf php8.2-fpm
# When upgrading from older PHP version:
sudo a2disconf php8.1-fpm
## Remove old packages
sudo apt purge php8.1*
8. Điều này giúp xây dựng lại danh sách các gói tương tự trên PHP 8. 2Khi cài đặt mới, bước này là không cần thiết
dpkg -l | grep php | tee packages.txt
2. Thêm sudo dpkg -l | grep php | tee packages.txt
sudo apt install apt-transport-https lsb-release ca-certificates wget -y
sudo wget -O /etc/apt/trusted.gpg.d/php.gpg //packages.sury.org/php/apt.gpg
sudo sh -c 'echo "deb //packages.sury.org/php/ $[lsb_release -sc] main" > /etc/apt/sources.list.d/php.list'
sudo apt update
# Expand the curly braces with all extensions necessary.
sudo apt install php8.2 php8.2-cli php8.2-{bz2,curl,mbstring,intl}
sudo apt install php8.2-fpm
# OR
# sudo apt install libapache2-mod-php8.2
sudo a2enconf php8.2-fpm
# When upgrading from older PHP version:
sudo a2disconf php8.1-fpm
## Remove old packages
sudo apt purge php8.1*
9 PPA làm kho lưu trữ phần mềm
sudo dpkg -l | grep php | tee packages.txt
sudo apt install apt-transport-https lsb-release ca-certificates wget -y
sudo wget -O /etc/apt/trusted.gpg.d/php.gpg //packages.sury.org/php/apt.gpg
sudo sh -c 'echo "deb //packages.sury.org/php/ $[lsb_release -sc] main" > /etc/apt/sources.list.d/php.list'
sudo apt update
# Expand the curly braces with all extensions necessary.
sudo apt install php8.2 php8.2-cli php8.2-{bz2,curl,mbstring,intl}
sudo apt install php8.2-fpm
# OR
# sudo apt install libapache2-mod-php8.2
sudo a2enconf php8.2-fpm
# When upgrading from older PHP version:
sudo a2disconf php8.1-fpm
## Remove old packages
sudo apt purge php8.1*
Các kho lưu trữ do Ondřej Surý duy trì chứa các gói PHP chính và được cập nhật liên tục
Sau khi kho lưu trữ này được thêm vào danh sách nguồn phần mềm của hệ thống, quá trình cài đặt và cập nhật ban đầu có thể được thực hiện bằng các lệnh
dpkg -l | grep php | tee packages.txt
0 tiêu chuẩnPhiên bản Ubuntu LTS
________số 8_______Debian
sudo apt install apt-transport-https lsb-release ca-certificates ```
software-properties-common
sudo add-apt-repository ppa:ondrej/php # Press enter when prompted.
sudo apt update
3. Cài đặt PHP8. 2 và tiện ích mở rộng
Tất cả PHP8. 2 gói có sẵn trong kho lưu trữ được thêm vào ở bước #2 theo mẫu đặt tên
dpkg -l | grep php | tee packages.txt
1. Các tiện ích mở rộng đi kèm trong PHP, chẳng hạn như dpkg -l | grep php | tee packages.txt
2, dpkg -l | grep php | tee packages.txt
3, dpkg -l | grep php | tee packages.txt
4, sudo dpkg -l | grep php | tee packages.txt
sudo apt install apt-transport-https lsb-release ca-certificates wget -y
sudo wget -O /etc/apt/trusted.gpg.d/php.gpg //packages.sury.org/php/apt.gpg
sudo sh -c 'echo "deb //packages.sury.org/php/ $[lsb_release -sc] main" > /etc/apt/sources.list.d/php.list'
sudo apt update
# Expand the curly braces with all extensions necessary.
sudo apt install php8.2 php8.2-cli php8.2-{bz2,curl,mbstring,intl}
sudo apt install php8.2-fpm
# OR
# sudo apt install libapache2-mod-php8.2
sudo a2enconf php8.2-fpm
# When upgrading from older PHP version:
sudo a2disconf php8.1-fpm
## Remove old packages
sudo apt purge php8.1*
5, v.v. không cần phải cài đặt thủ côngGói
dpkg -l | grep php | tee packages.txt
6 bao gồm một số gói PHP phổ biến. Có thể tắt có chọn lọc các tiện ích mở rộng không cần thiết sau nàysudo apt install php8.2 php8.2-cli php8.2-{curl,bz2,mbstring,intl}
Mở rộng các dấu ngoặc nhọn ở trên để bao gồm tất cả các phần mở rộng cần thiết trên hệ thống mới. Khi nâng cấp thiết lập PHP hiện có, tệp
sudo dpkg -l | grep php | tee packages.txt
sudo apt install apt-transport-https lsb-release ca-certificates wget -y
sudo wget -O /etc/apt/trusted.gpg.d/php.gpg //packages.sury.org/php/apt.gpg
sudo sh -c 'echo "deb //packages.sury.org/php/ $[lsb_release -sc] main" > /etc/apt/sources.list.d/php.list'
sudo apt update
# Expand the curly braces with all extensions necessary.
sudo apt install php8.2 php8.2-cli php8.2-{bz2,curl,mbstring,intl}
sudo apt install php8.2-fpm
# OR
# sudo apt install libapache2-mod-php8.2
sudo a2enconf php8.2-fpm
# When upgrading from older PHP version:
sudo a2disconf php8.1-fpm
## Remove old packages
sudo apt purge php8.1*
8 được tạo ở bước #1 sẽ liệt kê tất cả các gói PHP hiện tại4. Cài đặt và kích hoạt API máy chủ
Trên hệ thống mà máy chủ web tích hợp với PHP, hãy cài đặt các gói API máy chủ bổ sung. Sau đây là một số ví dụ về hầu hết các kết hợp phổ biến
Máy chủ web Apache với PHP-FPM
sudo apt install php8.2-fpm
sudo a2enconf php8.2-fpm
sudo a2disconf php8.1-fpm # When upgrading from an older PHP version
sudo service apache2 restart
Máy chủ web Apache với PHP là một mô-đun Apache
Không nên cài đặt PHP làm mô-đun Apache, trừ khi cần thiết cho trường hợp sử dụng cạnh
sudo apt install libapache2-mod-php8.2
sudo a2enmod php8.2
sudo a2dismod php8.1 # When upgrading from an older PHP version
sudo service apache2 restart
Máy chủ web Nginx với PHP-FPM
sudo apt install php8.2-fpm
sudo service nginx restart
Sau đó, chỉnh sửa tệp cấu hình Nginx có liên quan để trỏ đến ổ cắm PHP mới tại chỉ thị
dpkg -l | grep php | tee packages.txt
8- fastcgi_pass unix:/run/php/php8.1-fpm.sock;
+ fastcgi_pass unix:/run/php/php8.2-fpm.sock;
5. Kiểm tra PHP 8. 2 Cài đặt
Để kiểm tra cài đặt PHP CLI, hãy thử chạy các lệnh sau
sudo dpkg -l | grep php | tee packages.txt
sudo apt install apt-transport-https lsb-release ca-certificates wget -y
sudo wget -O /etc/apt/trusted.gpg.d/php.gpg //packages.sury.org/php/apt.gpg
sudo sh -c 'echo "deb //packages.sury.org/php/ $[lsb_release -sc] main" > /etc/apt/sources.list.d/php.list'
sudo apt update
# Expand the curly braces with all extensions necessary.
sudo apt install php8.2 php8.2-cli php8.2-{bz2,curl,mbstring,intl}
sudo apt install php8.2-fpm
# OR
# sudo apt install libapache2-mod-php8.2
sudo a2enconf php8.2-fpm
# When upgrading from older PHP version:
sudo a2disconf php8.1-fpm
## Remove old packages
sudo apt purge php8.1*
0Đầu ra dự kiến sẽ hiển thị PHP 8. 2, cùng với danh sách các tiện ích mở rộng PHP đã bật
Để kiểm tra tích hợp máy chủ web, hãy thử chạy tệp PHP qua máy chủ web
6. Làm sạch các gói PHP cũ
Các lệnh sau loại bỏ các phiên bản PHP cũ hơn. Bạn không nên xóa chúng cho đến phiên bản PHP 8. 2 cài đặt được xác minh là hoạt động bình thường
sudo dpkg -l | grep php | tee packages.txt
sudo apt install apt-transport-https lsb-release ca-certificates wget -y
sudo wget -O /etc/apt/trusted.gpg.d/php.gpg //packages.sury.org/php/apt.gpg
sudo sh -c 'echo "deb //packages.sury.org/php/ $[lsb_release -sc] main" > /etc/apt/sources.list.d/php.list'
sudo apt update
# Expand the curly braces with all extensions necessary.
sudo apt install php8.2 php8.2-cli php8.2-{bz2,curl,mbstring,intl}
sudo apt install php8.2-fpm
# OR
# sudo apt install libapache2-mod-php8.2
sudo a2enconf php8.2-fpm
# When upgrading from older PHP version:
sudo a2disconf php8.1-fpm
## Remove old packages
sudo apt purge php8.1*
1Thao tác này cũng xóa các tệp cấu hình cho các gói đang bị xóa
Không cần thiết phải cài đặt PHP 8. 2 trên toàn cầu và xóa phiên bản PHP cũ vì có thể chạy đồng thời nhiều phiên bản PHP trên cùng một máy chủ
PHP8. 2 CLI sẽ được cài đặt tại vị trí
dpkg -l | grep php | tee packages.txt
9 theo mặc định, nhưng được liên kết Tương tự, các tệp nhị phân PHP khác sẽ được đặt trong cùng thư mục [sudo add-apt-repository ppa:ondrej/php # Press enter when prompted.
sudo apt update
0, sudo add-apt-repository ppa:ondrej/php # Press enter when prompted.
sudo apt update
1, v.v.]. Theo mặc định, tên mặc định sudo add-apt-repository ppa:ondrej/php # Press enter when prompted.
sudo apt update
2 sẽ được liên kết tượng trưng với phiên bản PHP mới nhất, nhưng có thể thay đổi vị trí mặc định của lệnh sudo add-apt-repository ppa:ondrej/php # Press enter when prompted.
sudo apt update
2 liên kết vớiLệnh
sudo add-apt-repository ppa:ondrej/php # Press enter when prompted.
sudo apt update
4 cung cấp một cách dễ dàng để chuyển đổi giữa các phiên bản PHP cho PHP CLI nếu có nhiều phiên bản PHP liên kết với cùng một đường dẫn sudo add-apt-repository ppa:ondrej/php # Press enter when prompted.
sudo apt update
2sudo dpkg -l | grep php | tee packages.txt
sudo apt install apt-transport-https lsb-release ca-certificates wget -y
sudo wget -O /etc/apt/trusted.gpg.d/php.gpg //packages.sury.org/php/apt.gpg
sudo sh -c 'echo "deb //packages.sury.org/php/ $[lsb_release -sc] main" > /etc/apt/sources.list.d/php.list'
sudo apt update
# Expand the curly braces with all extensions necessary.
sudo apt install php8.2 php8.2-cli php8.2-{bz2,curl,mbstring,intl}
sudo apt install php8.2-fpm
# OR
# sudo apt install libapache2-mod-php8.2
sudo a2enconf php8.2-fpm
# When upgrading from older PHP version:
sudo a2disconf php8.1-fpm
## Remove old packages
sudo apt purge php8.1*
2Thao tác này đưa ra lời nhắc để chọn một cách tương tác đường dẫn nhị phân PHP thay thế mà
sudo add-apt-repository ppa:ondrej/php # Press enter when prompted.
sudo apt update
2 trỏ tới