温馨提示×

怎样升级debian php

小樊
43
2026-09-02 03:17:49
栏目: 编程语言

在 Debian 上“升级 PHP”通常分为几种情况,下面按最常见、最安全的方式给你说明。


一、先确认当前 PHP 版本

php -v

或

dpkg -l | grep php

二、使用 Debian 官方源升级(小版本)

如果是 同大版本内的小升级(如 8.2.1 → 8.2.12):

sudo apt update
sudo apt upgrade

✅ 这是最安全的方式
❌ 不会跨大版本(如 7.4 → 8.2)


三、升级到新的 PHP 大版本(推荐方式:用 sury 源)

Debian 官方源通常 PHP 版本较旧,推荐用 sury(deb.sury.org)

1️⃣ 安装依赖

sudo apt install -y lsb-release ca-certificates apt-transport-https software-properties-common

2️⃣ 添加 sury 源

sudo curl -sSL https://packages.sury.org/php/README.txt

或一键添加:

sudo wget -O /etc/apt/trusted.gpg.d/php.gpg https://packages.sury.org/php/apt.gpg
echo "deb https://packages.sury.org/php/ $(lsb_release -sc) main" | sudo tee /etc/apt/sources.list.d/php.list

3️⃣ 更新并安装新 PHP

sudo apt update
sudo apt install php8.2 php8.2-cli php8.2-fpm php8.2-common

(把 8.2 换成你需要版本,如 8.3)


四、切换 PHP 版本(多版本共存)

CLI 切换

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

查看所有版本:

sudo update-alternatives --config php

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

Apache

sudo a2dismod php7.4
sudo a2enmod php8.2
sudo systemctl restart apache2

Nginx

修改 fastcgi_pass:

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

然后:

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

六、检查扩展

php -m

缺扩展就装:

sudo apt install php8.2-mysql php8.2-curl php8.2-mbstring

七、升级前建议

✅ 备份网站和数据库
✅ 测试环境先升级
✅ 检查代码兼容性(尤其 7.x → 8.x)


如果你告诉我:

  • Debian 版本(如 11 / 12)
  • 当前 PHP 版本
  • 是否用 Apache / Nginx

我可以给你完全针对性的命令。

0 踩