温馨提示×

如何升级debian php

小樊
57
2026-09-17 07:12:40
栏目: 编程语言

在 Debian 系统上升级 PHP,通常有以下几种场景和做法。下面按最常见、最安全的方式说明。


一、先确认当前情况

php -v
dpkg -l | grep php

查看当前 PHP 版本,以及是通过 Debian 官方源 还是 第三方源(如 sury) 安装的。


二、使用 Debian 官方源升级(系统大版本升级)

如果你只是想跟随 Debian 系统版本升级(例如 Debian 11 → 12):

sudo apt update
sudo apt full-upgrade

Debian 12 默认 PHP 为 8.2,Debian 11 为 7.4。

⚠️ 这种方式不会跨大版本自动升级 PHP,只会在系统升级时一起升级。


三、使用 sury 源升级到最新 PHP(推荐)

如果你需要 新版本 PHP(如 8.2 / 8.3),最常用的是 deb.sury.org。

1. 安装依赖

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

2. 添加 sury 源

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.3 php8.3-cli php8.3-fpm php8.3-common

按需安装模块:

sudo apt install php8.3-mysql php8.3-curl php8.3-mbstring php8.3-xml

四、切换默认 PHP 版本

如果系统有多个 PHP 版本:

sudo update-alternatives --config php

选择对应的 CLI 版本。


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

Nginx

修改 fastcgi_pass:

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

然后:

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

Apache

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

六、清理旧版本(可选)

sudo apt remove php7.4*
sudo apt autoremove

七、常见注意事项

  • ✅ 升级前备份网站和数据库
  • ✅ 检查应用是否兼容新 PHP 版本(如 WordPress、Laravel)
  • ❌ 不要同时启用多个 PHP-FPM 版本给同一站点

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

  • Debian 版本(11 / 12?)
  • 当前 PHP 版本
  • 用的是 Nginx 还是 Apache

我可以给你精确命令。

0 踩