我目前正试图找到正确的php.ini文件来编辑它,并重新启动apache,以便进行修改,我被难住了。
我找到了三个不同的php.ini文件(不知道为什么有三个)。 我是这样找到这些文件的
$ sudo find / -name php.ini
/etc/php5/cli/php.ini
/etc/php5/apache2/php.ini
/etc/php5/cgi/php.ini
我还做了....
$ sudo php -i | grep 'Configuration File'
Configuration File (php.ini) Path => /etc/php5/cli
Loaded Configuration File => /etc/php5/cli/php.ini
我把它们都改成了我想要的设置(只是为了确定)。
我重新启动了apache,使用
sudo service apache2 restart
结果是...
* Restarting web server apache2
我重新加载页面,显示php.ini文件没有更新。
我知道这一点是因为我用
echo ini_get('post_max_size');
本来应该改成20M的,但还是只有2M的。
我试着重新启动我的电脑,以为这样就可以停止apache服务器,并以正确的设置重新加载php.ini文件,但不幸的是,这一尝试也失败了。
有没有可能是另一个php.ini文件在干扰?
你那里的三个文件分别是为了不同的用途。
/etc/php/5.6/cli/php.ini
是CLI的PHP程序,通过在终端运行php
可以找到它。
/etc/php/5.6/cgi/php.ini
是为php-cgi系统准备的,在此设置中没有特别使用。
/etc/php/5.6/apache2/php.ini
用于 Apache 使用的 PHP 插件。 这是你需要编辑的,的变化将应用于你的Apache设置。
/etc/php/5.6/fpm/php.ini
是为php5-fpm
处理器准备的,它是一个与fastcgi兼容的'包装器',用于PHP处理(例如从NGINX移交给php5-fpm
),在系统中作为一个独立的进程运行(与Apache的PHP插件不同)。
对于Ubuntu *低于16.04的版本,
/etc/php/5.6/
,/etc/php/7.0/
,/etc/php/7.1/
等,被/etc/php5/
等所取代。否则,这些路径仍然准确。 根据你的环境进行相应的调整,用你环境中存在的实际版本文件夹替换5.6
或数字。
试着在浏览器中运行一个包含这个片段的脚本<?php phpinfo(); ?>
,然后试着搜索类似加载的配置文件的东西。这个条目指定了你的PHP在Apache服务器中使用的php.ini。