在 Ubuntu 上排查 php-fpm 错误码 / 错误信息,一般可以从以下几个地方入手,按常用程度排序:
不同 PHP 版本路径不同,例如:
# PHP 7.4
/var/log/php7.4-fpm.log
# PHP 8.1
/var/log/php8.1-fpm.log
也可以先查配置:
php-fpm -i | grep error_log
# 或
grep error_log /etc/php/*/fpm/php-fpm.conf
tail -f /var/log/php8.1-fpm.log
常见错误示例:
pool www 相关child exited with code 70permission deniedphp --ini
通常路径:
/etc/php/8.1/fpm/php.ini
关键配置:
log_errors = On
error_log = /var/log/php_errors.log
查看:
tail -f /var/log/php_errors.log
如果你是 Nginx + php-fpm:
tail -f /var/log/nginx/error.log
常见:
connect() failed (111: Connection refused)upstream prematurely closed connectionsystemctl status php8.1-fpm
或:
ps aux | grep php-fpm
如果 php-fpm 进程异常退出:
journalctl -u php8.1-fpm
常见退出码:
| 退出码 | 含义 |
|---|---|
| 70 | 内部软件错误 |
| 78 | 配置错误 |
| 127 | 命令未找到 |
| 255 | 未知严重错误 |
在 php-fpm.conf:
log_level = debug
重启:
systemctl restart php8.1-fpm
# 1. php-fpm 是否在运行
systemctl status php8.1-fpm
# 2. 看 php-fpm 日志
tail -n 50 /var/log/php8.1-fpm.log
# 3. 看 nginx 错误
tail -n 50 /var/log/nginx/error.log
# 4. 看 php 错误
tail -n 50 /var/log/php_errors.log
如果你能贴出 具体的错误码或日志内容(比如 502、exit code 70、permission denied),我可以直接帮你判断原因。