原标题:Ubuntu20.04/18.04下安装或更新至PHP8
Ubuntu20.04/18.04下安装或更新至PHP8
开始
通过运行以下命令,确保你的 Ubuntu 服务器具有最新的软件包。
sudo apt update
sudo apt upgrade
这将更新软件包索引,并将已安装的软件包更新为最新版本。
为 PHP 8 添加 PPA
添加具有 PHP 8 软件包和其他必需的 PHP 扩展的ondrej / php。
sudo apt install software-properties-common
sudo add-apt-repository ppa:ondrej/php
sudo apt update
一旦你添加 PPA,你就可以安装 PHP 8 了。
为 Apache 安装 PHP 8
执行以下命令以安装 PHP 8
sudo apt install php8.0
安装完成后,可以使用以下命令确认安装
php -v
为 Nginx 安装 PHP 8 FPM
对于 Nginx,你需要安装 FPM,执行以下命令以安装 PHP 8 FPM
sudo apt install php8.0-fpm
安装完成后,请使用以下命令确认 PHP 8 FPM 已正确安装
php-fpm8.0 -v
安装 PHP 8 扩展
安装 php 扩展很简单,使用下面的命令可以安装任意扩展
sudo apt install php8.0-extension_name
下面列出了常用的扩展,可以复制并直接安装
sudo apt install php8.0-common php8.0-mysql php8.0-xml php8.0-curl php8.0-gd php8.0-imagick php8.0-cli php8.0-dev php8.0-imap php8.0-mbstring php8.0-opcache php8.0-soap php8.0-zip -y
为 Apache 配置 PHP 8
现在我们配置 Web 应用的 PHP 版本,可以通过修改php.ini文件中的某些值来配置
对于使用 Apache 的 PHP 8,php.ini位置一般在下面的目录中。
sudo nano /etc/php/8.0/apache2/php.ini
推荐在编辑器中按F6,使用搜索功能修改配置项,推荐更新以下值可以提高性能。
upload_max_filesize = 32M
post_max_size = 48M
memory_limit = 256M
max_execution_time = 600
max_input_vars = 3000
max_input_time = 1000
修改 PHP 设置后,你需要重新启动 Apache 才能使更改生效。
为 Nginx 配置 PHP 8
对于使用 Nginx 的 PHP 8 FPM,php.ini位置将在以下目录中。
sudo nano /etc/php/8.0/fpm/php.ini
在编辑器中按 F6 键进行搜索,并更新以下值以获得更好的性能。
upload_max_filesize = 32M
post_max_size = 48M
memory_limit = 256M
max_execution_time = 600
max_input_vars = 3000
max_input_time = 1000
修改 PHP 设置后,你需要重新启动 PHP FPM 才能使更改生效。
sudo php-fpm8.0 -t
sudo service php8.0-fpm restart
配置 PHP 8 FPM 池
PHP 8 FPM 允许你为服务配置用户和组,并在其下运行。你可以使用以下命令修改它们
sudo nano /etc/php/8.0/fpm/pool.d/www.conf
通过将www-data替换为你的username来更改以下几行。
user = username
group = username
listen.owner = username
listen.group = username
点击CTRL+X和Y保存配置,并检查配置是否正确,并重启PHP。
重启 PHP 8.0 FPM
更新 PHP FPM 设置后,你需要重新启动它以应用更改。
sudo php-fpm8.0 -t
sudo service php8.0-fpm restart
现在,你已经安装并配置了 PHP 8。
为 Apache 升级到 PHP 8
安装 PHP 8 之后,你需要升级到最新安装的 PHP 版本。
你需要禁用旧 PHP 版本并启用新 PHP 版本 8。
sudo a2dismod php7.4
此命令将禁用 PHP 7.4 模块。
sudo a2enmod php8.0
此命令将启用PHP 8模块。
必须要重新启动 Apache 才能使更改生效。使用下面的命令
sudo service apache2 restart
将 Nginx 升级到 PHP 8
你需要在 Nginx 配置文件里修改 PHP-FPM 的版本,在 Nginx 安装目录下的 sites-available文件中找到对应的配置文件,配置文件中 location 块下面的 location ~ \.php$ 里的内容就是你对 PHP 相关的配置
sudo nano /etc/nginx/sites-available/your.conf
找到 fastcgi_pass 配置项,一般长这样
fastcgi_pass unix:/run/php/php7.4-fpm.sock
然后你需要将旧版本替换为新版本,修改成下面的样子
fastcgi_pass unix:/run/php/php8.0-fpm.sock
测试你的配置文件,并重启 Nginx
sudo nginx -t
sudo service nginx restart
收藏
责任编辑: