Jul*_*ien 7 php unix ubuntu phpinfo
我完全不明白为什么:
php -v
(or) php -m
Run Code Online (Sandbox Code Playgroud)
返回:PHP 7.0
和phpinfo()说我使用的是PHP 5.
这很奇怪,任何想法?
我正在使用Ubuntu和Nginx.下面是一个版画屏幕:
这并不奇怪。php -vrunning php-cli,它依次读取不同的 ini 文件。phpinfo()由您的网络服务器评估,该服务器读取特定于网络服务器的 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();
?>
Run Code Online (Sandbox Code Playgroud)
然后尝试运行:
# php test.php
Run Code Online (Sandbox Code Playgroud)
然后从 Web 浏览器访问此文件:http://path.to.your.site.com/path/to/test.php
您将看到 cli PHP 将报告版本 7.0,而 nginx 将继续报告 PHP5。