温馨提示×

Ubuntu如何切换PHP版本

小樊
36
2026-08-12 08:55:57
栏目: 编程语言

在 Ubuntu 上切换 PHP 版本,常见做法有 三种update-alternatives(CLI)Apache 切换模块Nginx + PHP-FPM 切换池。下面按使用场景说明。


一、先确认已安装的 PHP 版本

ls /usr/bin/php*
php -v

如果还没安装多个版本,可先安装,例如:

sudo apt update
sudo apt install php8.2 php8.1 php7.4

二、切换 命令行(CLI)PHP 版本

适用于 php -vcomposerartisan 等命令行工具。

方法 1:update-alternatives(推荐)

sudo update-alternatives --config php

会显示类似:

  1 /usr/bin/php8.2
* 2 /usr/bin/php8.1
  3 /usr/bin/php7.4

输入编号回车即可。

验证:

php -v

方法 2:直接设置

sudo update-alternatives --set php /usr/bin/php8.1

三、Apache 环境下切换 PHP 版本

1️⃣ 禁用当前 PHP 模块

sudo a2dismod php8.2

2️⃣ 启用目标 PHP 模块

sudo a2enmod php8.1

3️⃣ 重启 Apache

sudo systemctl restart apache2

✅ 适用于:

  • Apache
  • libapache2-mod-php

四、Nginx 环境下切换 PHP 版本(PHP-FPM)

1️⃣ 查看已安装的 PHP-FPM

ls /run/php/

例如:

php8.1-fpm.sock
php8.2-fpm.sock

2️⃣ 修改 Nginx 站点配置

编辑:

sudo nano /etc/nginx/sites-available/default

找到:

fastcgi_pass unix:/run/php/php8.2-fpm.sock;

改为:

fastcgi_pass unix:/run/php/php8.1-fpm.sock;

3️⃣ 重启服务

sudo systemctl restart php8.1-fpm
sudo systemctl restart nginx

五、Composer 指定 PHP 版本(可选)

php8.1 /usr/bin/composer install

六、推荐做法总结

使用场景 推荐方式
命令行 update-alternatives
Apache a2dismod / a2enmod
Nginx 修改 PHP-FPM sock
多项目 每个项目单独 PHP-FPM

七、常见问题

切换后没生效?

  • 清浏览器缓存
  • 重启 Apache / Nginx
  • 确认 phpinfo() 显示的版本

Ubuntu 22.04 默认 PHP?

  • 默认 PHP 8.1

如果你愿意,可以告诉我:

  • ✅ Ubuntu 版本
  • ✅ Apache / Nginx
  • ✅ 单项目 or 多项目

我可以给你精确到命令级的操作方案。

0