How to solve the problem that php-fpm under nginx does not record php error logs: 1. Modify the configuration in [php-fpm.conf], if not, add it; 2. Modify the configuration in [php.ini], if not, then Add; 3. Restart [php-fpm].
How to solve the problem that php-fpm does not record php error log under nginx:
1. Modify Configuration in php-fpm.conf, if not, add
catch_workers_output = yes error_log = log/error_log
2. Modify the configuration in php.ini, if not, add
log_errors = On error_log = "/usr/local/lnmp/php/var/log/error_log" error_reporting=E_ALL&~E_NOTICE
3 .Restart php-fpm
When PHP executes an error, you can see the error log in "/usr/local/lnmp/php/var/log/error_log"
Please note:
1. The php_admin_value[error_log]
parameter in php-fpm.conf
will overwrite the ## in php.ini #error_log Parameters
phpinfo() has writable permissions and does not have the
php_admin_value[error_log] parameter set , otherwise the error log will be output to the error log of
php-fpm.
phpinfo() to view the results
ini_set("display_errors",0) ini_set("error_reporting",E_ALL); //这个值好像是个PHP的常量 ini_set("error_log","<日志文件名>") ini_set("log_errors",1);
4. How to output the php error log to the nginx error log
In PHP 5.3.8 and earlier versions, when PHP runs through FastCGI, if an error occurs during user access, it will first be written to the PHP errorlog.
If the PHP errorlog cannot be written, The error content will be returned to the FastCGI interface, and then nginx will record it in nginx's errorlog after receiving the error return from FastCGI.
In PHP 5.3.9 and later versions, PHP only tries to write after an error occurs. Enter the error log of PHP. If it fails, it will not return to FastCGI. The error log will be output to the error log of php-fpm.
So if you want to output the php error log to the nginx error log, you need to use a version before php5.3.8, and the error_log of php in the configuration file is not writable by the php worker process
Related learning recommendations:PHP programming from entry to proficiency
The above is the detailed content of What should I do if php-fpm under nginx does not record php error logs?. For more information, please follow other related articles on the PHP Chinese website!