首页  >  文章  >  后端开发  >  如何解决linux下修改php.ini不生效的问题

如何解决linux下修改php.ini不生效的问题

藏色散人
藏色散人原创
2020-08-07 10:32:003157浏览

php.ini修改不生效的解决办法:1、重新加载“php.ini”文件;2、在打印出的“phpinfo();”中搜索修改的配置;3、查看“php-fpm.conf”配置文件并修改即可。

如何解决linux下修改php.ini不生效的问题

推荐:《PHP视频教程

php.ini修改后不生效主要有如下几种原因:
1、修改php.ini配置文件后,没有重新加载php.ini配置文件。
2、存在多个php.ini配置文件
3、php.ini中的配置被其他文件中配置覆盖
问题排查:
1、修改配置后,重新加载php.ini文件,打印出phpinfo();查看读取的是哪个配置文件,确定你修改的配置文件是正确的。如下图。
在这里插入图片描述
2、在打印出的phpinfo();中搜索你修改的配置,注意Local Value(局部变量)和Master Value(主变量),Local Value会覆盖Master Value的值,Master Value是你php.ini配置项的值,而Local Value可能是在代码中设置的值,如下图,eg:ini_set('display_errors',true);
另外百度到说Apache的配置文件中可以重写php.ini的设置,可能在conf/httpd.conf,也可能在conf.d/**.conf中,一般在conf.d/php.conf中,但是在windows下没有找到conf.d文件,可能在linux版本的apache下有conf.d文件。
在这里插入图片描述
3、在linux环境下,php5.3.3以前php-fpm还没有被php收录,配置php基本都在php.ini里面,php5.3.3及以后,除了在php.ini配置以外,还可以在php-fpm.conf里面配置,而php-fpm.conf优先级比php.ini高。
查看php-fpm.conf配置文件,或者php-fpm.d/.conf文件中配置是否覆盖了php.ini中的配置,php-fpm的配置示例如下:php_value[session.save_handler] = redis  php_value[session.save_path] = "tcp://***.***.***.***:6379?auth=***"

以上是如何解决linux下修改php.ini不生效的问题的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn