|
Beaucoup de webmasters sont confrontés à 500 502 problèmes après être passés à nginx+php-fpm. Lorsque nginx reçoit le code d’erreur ci-dessus, on peut déterminer qu’il existe un problème avec l’analyse PHP php-fpm du backend, comme une erreur d’exécution ou un délai d’attente d’exécution. php-fpm.conf a un paramètre request_slowlog_timeout décrit ainsi - ; The timeout for serving a single request after which a PHP backtrace will be
- ; dumped to the 'slowlog' file. A value of '0s' means 'off'.
- ; Available units: s(econds)(default), m(inutes), h(ours), or d(ays)
- ; Default Value: 0
- ;request_slowlog_timeout = 0
Code de copieLorsque request_slowlog_timeout est réglé à une seconde spécifique request_slowlog_timeout =5, cela signifie que si un script est exécuté plus de 5 secondes, il sera enregistré dans le fichier journal lent
request_slowlog_timeout = 0 signifie que la sortie de logarisme lente est désactivée. L’emplacement du fichier log lent se trouve par défaut dans le dossier journal du répertoire d’installation php, et vous pouvez le spécifier en modifiant le paramètre slowlog = log/$pool.log.slow. Exemple de journal lent PHP-FPM, le journal lent enregistrera le numéro de processus, le nom du script, le fichier spécifique quelle ligne de code, quelle fonction est trop longue à exécuter. - [21-Nov-2013 14:30:38] [pool www] pid 11877
- script_filename = /usr/local/lnmp/nginx/html/www.quancha.cn/www/fyzb.php
- [0xb70fb88c] file_get_contents() /usr/local/lnmp/nginx/html/www.quancha.cn/www/fyzb.php:2
- [21-Nov-2013 14:15:23] ERROR: [pool www] 'slowlog' must be specified for use with 'request_slowlog_timeout'
Code de copierequest_slowlog_timeout et slowlog doivent être réglés en même temps, et il faut activer slowlog en même temps que l’activation du request_slowlog_timeout - [21-Nov-2013 14:16:27] ERROR: Unable to create or open slowlog(/usr/local/lnmp/php/log/www.log.slow): No such file or directory (2)
Code de copieLes chemins de logs lents doivent être créés manuellement
Étapes spécifiques pour activer la journalisation lente php-fpm : - cd /usr/local/lnmp/php
- vi etc/php-fpm.conf
- 去掉request_slowlog_timeout 、slowlog的前缀分号';',设置request_slowlog_timeout =5;
- :wq
- 保存退出
- 创建慢日志目录
- mkdir log
- 重启php-fpm
- kill -INT `cat var/run/php-fpm.pid
- sbin/php-fpm
Code de copie
|