在 Ubuntu 上切换 PHP 版本,常见做法取决于你是**命令行(CLI)**还是 Web 服务器(Apache / Nginx) 使用。下面按常见场景给你一个完整说明。
php -v
查看系统已安装哪些 PHP 版本:
ls /usr/bin/php*
或:
update-alternatives --list php
update-alternatives(推荐)sudo update-alternatives --config php
会显示类似:
1 /usr/bin/php7.4
2 /usr/bin/php8.1
输入对应数字即可切换。
验证:
php -v
sudo update-alternatives --set php /usr/bin/php8.1
sudo a2dismod php7.4
sudo a2enmod php8.1
sudo systemctl restart apache2
验证:
php -v
或在 phpinfo() 页面查看。
ls /run/php/
例如:
php7.4-fpm.sock
php8.1-fpm.sock
编辑你的站点配置:
sudo nano /etc/nginx/sites-available/default
找到类似内容:
fastcgi_pass unix:/run/php/php7.4-fpm.sock;
改成:
fastcgi_pass unix:/run/php/php8.1-fpm.sock;
sudo systemctl restart php8.1-fpm
sudo systemctl restart nginx
sudo apt update
sudo apt install software-properties-common
sudo add-apt-repository ppa:ondrej/php
sudo apt update
安装多个版本:
sudo apt install php7.4 php8.1 php8.2
| 场景 | 命令 |
|---|---|
| CLI 切换 | update-alternatives --config php |
| Apache | a2dismod / a2enmod |
| Nginx | 改 fastcgi_pass 指向 fpm |
| 重启 Apache | systemctl restart apache2 |
| 重启 Nginx | systemctl restart nginx |
如果你愿意,可以告诉我:
我可以直接给你一条完整可执行的命令组合 ✅