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 # 搜索特定IP的访问记录
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日志,有效排查故障或分析性能问题。