在 Debian 系统中切换 PHP 版本,常见做法是通过 update-alternatives 或 修改 Web 服务器(Apache / Nginx)使用的 PHP-FPM 版本。下面分情况说明。
dpkg -l | grep php
或
ls /usr/bin/php*
update-alternatives 切换 CLI 的 PHP 版本(命令行)sudo update-alternatives --display php
sudo update-alternatives --config php
示例输出:
There are 3 choices for the alternative php (providing /usr/bin/php).
Selection Path Priority Status
------------------------------------------------------------
* 0 /usr/bin/php8.2 82 auto mode
1 /usr/bin/php7.4 74 manual mode
2 /usr/bin/php8.1 81 manual mode
3 /usr/bin/php8.2 82 manual mode
Press <enter> to keep the current choice[*], or type selection number:
输入对应数字即可。
✅ 验证:
php -v
libapache2-mod-php)sudo a2dismod php7.4
sudo a2enmod php8.2
sudo systemctl restart apache2
ls /run/php/
常见如:
php7.4-fpm.sock
php8.2-fpm.sock
编辑:
sudo nano /etc/nginx/sites-available/default
找到:
fastcgi_pass unix:/run/php/php7.4-fpm.sock;
改为:
fastcgi_pass unix:/run/php/php8.2-fpm.sock;
sudo systemctl restart php8.2-fpm
sudo systemctl restart nginx
update-alternativesphp-fpmserver 块指定不同 php-fpm sockupdate-alternatives 选项?说明只安装了一个 PHP 版本,先安装:
sudo apt install php8.2 php8.2-cli
php -v 不变?确认你改的是 CLI,而不是 Web 环境。
如果你愿意,可以告诉我:
我可以给你更精确的命令。