升级PHP后phpversion()与终端php -version返回版本不一致求助
解决PHP命令行版本与phpversion()返回版本不一致的问题
嘿,这种情况我太熟了!你这明显是命令行的PHP已经更新,但web服务器还在跑旧版本的PHP进程/模块,所以才会出现php -version显示5.6,而网页里phpversion()还返回5.5.9的矛盾。别慌,按下面的步骤来就能搞定:
先搞清楚你的web服务器用哪种方式跑PHP
首先得确认你的网站是用Apache还是Nginx:
- 如果是Nginx,几乎肯定是用PHP-FPM来处理PHP请求
- 如果是Apache,可能是mod_php模块,也可能是PHP-FPM
对应操作步骤
情况1:用的是PHP-FPM
升级PHP后,旧的PHP-FPM进程还在后台运行,没切换到新的5.6版本。执行下面的命令重启它:
sudo service php5.6-fpm restart
要是这个命令不行,试试Ubuntu 14.04里的旧格式:
sudo /etc/init.d/php5.6-fpm restart
情况2:用的是Apache的mod_php模块
如果Apache是直接加载PHP模块的,那得先让它卸载旧的PHP5.5模块,加载新的PHP5.6模块,再重启Apache:
- 禁用旧的PHP5模块:
sudo a2dismod php5
- 启用PHP5.6模块:
sudo a2enmod php5.6
- 重启Apache生效:
sudo service apache2 restart
情况3:不确定运行方式?直接全来一遍!
要是你搞不清到底用的哪种,那就把上面的操作都执行一遍,反正没坏处:
sudo a2dismod php5 sudo a2enmod php5.6 sudo service php5.6-fpm restart sudo service apache2 restart
验证结果
做完上面的操作后,刷新你的网页,再调用phpversion(),应该就能看到5.6.34的版本了。同时再在终端跑一遍php -version确认命令行版本没问题。
内容的提问来源于stack exchange,提问作者Kuldeep Dangi
相关产品推荐
相关产品推荐

