php.ini修改不生效

排错步骤

1.检查phpinfo 里的读取的 php.ini 的路径

# /usr/local/php/bin/php -i |grep php.ini
Configuration File (php.ini) Path => /usr/local/php/etc

2.修改php.ini配置,我这里是安装zabbix需要的配置。

# vim /usr/local/php/php.ini

post_max_size = 16M

max_execution_time = 300

max_input_time = 300

date.timezone = Asia/Shanghai

always_populate_raw_post_data = -1

 

3.修改完成后重启php-fpm配置,如果是lamp环境还要重启httpd.

# /etc/init.d/php-fpm restart  可以看到配置没有生效

 

4.这里就是重点了。fpm下,除了php.ini这个默认的配置文件能影响PHP,php-fpm的配置文件也可以覆盖php.ini的配置。而FPM的配置才是起最终决定性的,也就是优先级高于 php.ini。(我个人发现已经不是优先级的事了,php.ini整个不生效了,我后面再去仔细研究)然后 php-fpm 的配置都是默认的,所以改了 php.ini 都没用(当然PHP代码里也能修改PHP.INI里的设置,了解一下就好)

[root@VM_149_134_centos ~]# vim /usr/local/php/etc/php-fpm.conf 加入配置

php_value[post_max_size] = 16M
php_value[max_execution_time] = 300

php_value[max_input_time] = 300
php_value[date.timezone] = Asia/Shanghai
php_value[always_populate_raw_post_data] = -1

 

5.排错。问题不能不处理。我抽空找到了原因。

1)正常的机器

2)问题机器

3)对比Loaded Configuration File,可以发现php.ini没有成功加载php.ini文件。

4)发现php.ini文件名有乱码,所以重命名。

5)测试可以看到问题已经搞定。如果我的归纳你看不懂,移步。

http://serverfault.com/questions/405684/setting-php-values-in-php-fpm-confs-instead-of-php-ini
http://www.oschina.net/question/922127_160094?sort=time

https://www.v2ex.com/t/268735

 

未经允许不得转载: » php.ini修改不生效
微信公众号:这是个测试
关注我们,每天分享更多有趣的事儿,有趣有料!
12000人已关注
分享到:
赞(0) 打赏

评论抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏