Ubuntu 18.04.6 LTS下切换PHP版本后CLI与Web版本不一致求助
解决PHP CLI版本切换后Apache仍使用旧版本的问题
问题核心
update-alternatives --config php仅切换了CLI环境的PHP版本,但Apache依赖独立的PHP模块运行,你当前既没有安装PHP8.2的Apache模块,默认软件源也不包含该包,导致Apache仍加载旧的PHP7.4模块。
分步解决
1. 添加PHP官方PPA源
Ubuntu/Debian默认源通常不包含较新的PHP版本,先添加官方维护的PPA:
sudo add-apt-repository ppa:ondrej/php sudo apt update
2. 安装PHP8.2的Apache模块
现在可以正常安装对应模块:
sudo apt-get install libapache2-mod-php8.2
3. 切换Apache的PHP模块
先禁用当前Apache加载的PHP7.4模块:
sudo a2dismod php7.4
再启用PHP8.2模块:
sudo a2enmod php8.2
4. 重启Apache生效配置
sudo systemctl restart apache2
5. 验证结果
- 执行
php -v确认CLI版本保持8.2 - 访问
phpinfo()页面,检查PHP版本是否已更新为8.2
额外场景(使用PHP-FPM的情况)
如果你的项目采用FPM模式而非mod_php,需执行以下操作:
sudo apt install php8.2-fpm sudo a2dismod php7.4 sudo a2enmod proxy_fcgi setenvif sudo a2enconf php8.2-fpm sudo systemctl restart apache2
内容的提问来源于stack exchange,提问作者Sruj
相关产品推荐
相关产品推荐

