linux php.ini不生效的解決辦法:1、重新加載php.ini配置文件;2、在打印出的“phpinfo();”中搜索要修改的配置;3、查看“php-fpm.conf”配置文件,檢查是否覆蓋了php.ini中的配置即可。
linux php.ini不生效怎么辦?
在linux環境下修改php.ini不生效問題排查
php.ini修改后不生效主要有如下幾種原因:
1、修改php.ini配置文件后,沒有重新加載php.ini配置文件。
立即學習“PHP免費學習筆記(深入)”;
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=***”。