发布于2026-07-15 阅读(0)
扫一扫,手机访问
日常排查PHP-FPM故障时,日志永远是最先翻的“黑匣子”。不过很多人第一反应是“日志在哪”,然后开始满世界翻配置文件。其实问题的核心无非三件事:找到日志、看懂日志、用好日志。下面直接上干货,从定位到分析,一条龙讲清楚。
PHP-FPM的日志路径由配置文件中的error_log(错误日志)和access_log(访问日志)参数决定。默认路径会因为发行版和配置方式不同而有所差异,但大致就那么几个常见位置。

/var/log/php-fpm/error.log、/var/log/php-fpm/www-error.log/var/log/php-fpm/access.log、/var/log/php-fpm/www.access.log/etc/php-fpm.conf或/etc/php-fpm.d/www.conf),查找error_log或access_log指令,确认实际路径。例如:cat /etc/php-fpm.d/www.conf | grep "error_log|access_log"
/var/log/syslog、CentOS的/var/log/messages),通过grep过滤一下就行:grep "php-fpm" /var/log/syslog
tail -f跟踪日志文件的实时更新,特别适合一边复现问题一边看报错:sudo tail -f /var/log/php-fpm/error.log
less或more逐页翻阅,分析历史记录时最顺手:sudo less /var/log/php-fpm/error.log
grep是日志分析的核心武器,比如搜致命错误或特定IP的访问记录:sudo grep "fatal error" /var/log/php-fpm/error.log
sudo grep "192.168.1.1" /var/log/php-fpm/access.log
slowlog_threshold阈值(默认10秒)的脚本,对优化慢查询和卡顿问题特别有用。root或www-data用户,普通用户查看时记得加sudo:sudo cat /var/log/php-fpm/error.log
logrotate自动归档。比如每天切一次,保留7天,压缩旧日志。示例配置(保存到/etc/logrotate.d/php-fpm):/var/log/php-fpm/error.log {
daily
missingok
rotate 7
compress
delaycompress
notifempty
create 0640 www-data adm
}
执行sudo logrotate -f /etc/logrotate.d/php-fpm可手动触发轮换。
掌握了这些方法,以后遇到PHP-FPM相关的异常,基本就能快速定位到问题根源。日志本身不会骗人,关键是怎么把它用起来。
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
正版软件
正版软件
正版软件
正版软件
正版软件
1
2
3
7
8