温馨提示×

ubuntu php-fpm怎么降级

小樊
48
2026-10-10 07:11:04
栏目: 编程语言

在 Ubuntu 上 降级 php-fpm 通常是因为升级后不兼容(比如从 PHP 8.1 降到 8.0 或 7.4)。下面按推荐方式给你说明,分两种常见场景。


一、通过 Ubuntu 官方仓库降级(不推荐跨大版本)

⚠️ 官方仓库一般只保留一个 PHP 大版本,不能直接 apt install php7.4 除非你加源。

1. 查看当前版本

php -v
php-fpm -v

2. 卸载当前 php-fpm

sudo apt remove php-fpm php8.1-fpm
sudo apt autoremove

3. 安装旧版本(需系统支持)

sudo apt install php7.4-fpm

如果提示 E: Unable to locate package php7.4-fpm
说明 Ubuntu 官方源没有该版本,需要用 ondrej/php 源(见下)


二、使用 ondrej/php 源降级(✅ 推荐)

Ubuntu 官方源版本少,最标准的做法是用第三方源。

1. 添加 PHP 源

sudo apt update
sudo apt install software-properties-common
sudo add-apt-repository ppa:ondrej/php
sudo apt update

2. 安装指定低版本 php-fpm

例如降级到 PHP 8.0:

sudo apt install php8.0-fpm

或 PHP 7.4:

sudo apt install php7.4-fpm

三、多版本共存 & 切换(重要)

Ubuntu 支持 多个 php-fpm 共存。

查看已安装版本

ls /usr/sbin/php-fpm*

停止新版本

sudo systemctl stop php8.1-fpm
sudo systemctl disable php8.1-fpm

启动旧版本

sudo systemctl enable php8.0-fpm
sudo systemctl start php8.0-fpm

四、Web 服务器切换(Nginx / Apache)

Nginx 示例

修改:

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

然后:

sudo nginx -t
sudo systemctl reload nginx

Apache(php-fpm 模式)

sudo a2disconf php8.1-fpm
sudo a2enconf php8.0-fpm
sudo systemctl restart apache2

五、CLI 版本切换(可选)

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

六、常见坑提醒

✅ 降级后 扩展要重装(如 redis、mysqli)
✅ composer 可能不兼容老 PHP
✅ 不要直接删 /etc/php,保留配置更安全


如果你告诉我:

  • Ubuntu 版本(20.04 / 22.04 / 24.04)
  • 当前 PHP 版本
  • 想降到哪个版本

我可以给你 精确命令。

0 踩