v和phpinfo()
我完全不明白为什么:
php -v
(or) php -m
返回:PHP 7.0
和phpinfo()说我正在使用PHP 5。
这很奇怪,有什么想法?
我使用的是Ubuntu和Nginx。 以下是一个打印屏幕:
这并不奇怪。 php -v
运行php-cli
,后者读取另一个ini文件。 phpinfo()
由您的web服务器进行评估,该服务器读取特定于web服务器的ini文件。
在Ubuntu的情况下,它们是: /etc/phpX/apache2/php.ini
和/etc/phpX/cli/php.ini
,对于你的情况下的nginx,它使用php-fpm
,其配置位于/etc/phpX/fpm/php.ini
。
此外,在你的情况下,PHP7可能是编译或从其他回购拉。 如果你想让nginx选择PHP7,你需要编译或者安装php7-fpm
或者其他的东西。 YMMV取决于你如何将PHP7加入你的系统。
要了解它是如何工作的 - 在web文件夹内的文件系统的任何地方创建一个文件,称为test.php
其中包含以下内容:
<?
phpinfo();
?>
然后尝试运行:
# php test.php
然后从http://path.to.your.site.com/path/to/test.php的Web浏览器访问此文件
你会看到cli PHP会报告7.0版本,而nginx会持续报告PHP5。
如果在使用Apache的Ubuntu 14.04上从PHP5升级到PHP7时遇到此问题,请参阅以下帮助信息:
在Apache上禁用PHP5模块:
sudo a2dismod php5
现在启用PHP7:
sudo a2enmod php7.1
要反映更改,需要Apache重新启动:
sudo systemctl restart apache2
链接地址: http://www.djcxy.com/p/88205.html
上一篇: v and phpinfo()