在 Ubuntu 系统中配置 PHP-FPM 错误日志其实只需几分钟,但很多新手常困惑于“日志究竟保存在哪里”。下面我们直接演示完整流程,启用必要选项,确保后续出现问题时能迅速定位线索。

首先,定位 PHP-FPM 的池配置文件。通常该文件位于 /etc/php/{version}/fpm/pool.d/www.conf,其中 {version} 需替换为实际安装的 PHP 版本(如 7.4、8.0 或 8.1)。例如,若使用 PHP 7.4,则路径为 /etc/php/7.4/fpm/pool.d/www.conf。
使用你喜欢的文本编辑器打开该文件,例如:
sudo nano /etc/php/{version}/fpm/pool.d/www.conf务必替换 {version} 为实际版本号,不要直接复制粘贴后运行。
第二步,在配置文件中找到以下两行:
;error_log = /var/log/php-fpm/www-error.log;catch_workers_output = yes行首的分号表示注释,需取消注释才能生效。直接删除分号,并指定你希望保存日志的路径。例如修改为:
error_log = /var/log/php-fpm/error.logcatch_workers_output = yes第一行指定错误日志的存储位置,第二行则将 PHP-FPM 工作进程的标准输出和错误输出一并捕获到日志中——这一选项非常实用,许多隐藏的运行时错误都需依赖它才能被记录。
第三步,保存修改并关闭编辑器。
第四步,重启 PHP-FPM 服务以使配置生效:
sudo systemctl restart php{version}-fpm同样将 {version} 替换为实际版本号,例如:
sudo systemctl restart php7.4-fpm完成。现在错误日志会自动写入指定文件。你可以使用以下命令实时监控日志输出:
sudo tail -f /var/log/php-fpm/error.log今后遇到白屏、500 错误或异常超时等问题,先查看此日志,通常能直接定位根因。如果配置后日志文件未生成,请检查父目录 /var/log/php-fpm/ 是否存在且 PHP-FPM 是否有写入权限——这是容易被忽视的细节。
