php.ini
(路徑:/etc/php/{版本號}/apache2/
或 /etc/php/{版本號}/fpm/
),搜索 error_log
配置項,獲取日志路徑。php -i | grep 'Loaded Configuration File' # 查看php.ini路徑
grep -i "error_log" /etc/php/7.4/apache2/php.ini # 示例:搜索error_log配置
/var/log/apache2/error.log
/var/log/nginx/error.log
/var/log/php7.x-fpm.log
(7.x
替換為實際版本號)tail -f
命令動態顯示最新日志。sudo tail -f /var/log/php_errors.log # 替換為實際日志路徑
grep
過濾特定錯誤類型(如“Fatal”“Warning”)。sudo grep -i "Fatal" /var/log/php_errors.log
[10-Aug-2025 14:30:00] PHP Fatal error: Uncaught Error: Call to undefined function foo() in /var/www/index.php on line 5
10-Aug-2025 14:30:00
Fatal error
(致命錯誤,腳本終止)Call to undefined function foo()
(未定義函數)in /var/www/index.php on line 5
(定位到具體文件和行號)chmod
/chown
調整。awk
:提取特定字段(如時間戳、錯誤級別)。sudo awk '/ERROR/ {print $1, $2, $3}' /var/log/php_errors.log
logrotate
:定期切割日志,避免文件過大。phpinfo()
,查看當前PHP配置(如錯誤報告級別)。display_errors
,避免敏感信息泄露,僅記錄日志。www-data
或對應Web用戶)。通過以上步驟,可快速定位并解決Ubuntu中PHP錯誤日志的問題。