Debian PHP错误日志怎么看
导读:Debian 上查看 PHP 错误日志的实用步骤 一、先确认日志落在哪里 使用 Apache:PHP 错误通常写入 Web 服务器的错误日志 /var/log/apache2/error.log。 使用 Nginx + PHP-FPM:P...
Debian 上查看 PHP 错误日志的实用步骤
一、先确认日志落在哪里
- 使用 Apache:PHP 错误通常写入 Web 服务器的错误日志 /var/log/apache2/error.log。
- 使用 Nginx + PHP-FPM:PHP 自身的错误由 PHP-FPM 记录,常见路径为 /var/log/php-fpm.log 或 /var/log/php7.x-fpm.log(其中 7.x 为具体版本);同时,Nginx 的错误日志 /var/log/nginx/error.log 也会记录与 FastCGI/PHP 相关的请求错误。
- 使用 CLI(命令行脚本):日志位置取决于 php.ini 中的 error_log 指令,可能写入指定的自定义文件,或系统日志(如 journalctl)。
- 不确定时,优先检查 PHP-FPM 池配置(如 /etc/php/7.x/fpm/pool.d/www.conf)中的 error_log 项,以及 php.ini 的 error_log 设置。
二、常用查看与检索命令
- 实时查看日志:
- Apache:sudo tail -f /var/log/apache2/error.log
- Nginx:sudo tail -f /var/log/nginx/error.log
- PHP-FPM:sudo tail -f /var/log/php-fpm.log 或 sudo tail -f /var/log/php7.x-fpm.log
- 按关键字检索(如数据库连接错误):
- Apache:sudo grep ‘mysql’ /var/log/apache2/error.log
- Nginx:sudo grep ‘mysql’ /var/log/nginx/error.log
- 查看 CLI 或系统日志:
- 查看本次启动以来的 PHP-FPM 日志:sudo journalctl -u php7.x-fpm
- 查看更详细的系统日志:sudo journalctl -xe
- 容器内查看:docker exec -it php-fpm tail -f /var/log/php-fpm/error.log。
三、如何开启或定位 PHP 自身的错误日志
- 修改 php.ini(路径因 SAPI 与版本不同,如 /etc/php/7.x/apache2/php.ini、/etc/php/7.x/cli/php.ini):
- 开启日志:log_errors = On
- 指定文件:error_log = /var/log/php_errors.log(确保目录可写,如属 www-data 建议使用 /var/log/php/ 并 chown/chmod 正确)
- 生产环境建议:display_errors = Off,避免泄露敏感信息;开发环境可临时开启 display_errors 便于调试
- 在脚本中动态指定:
- ini_set(‘log_errors’, 1);
- ini_set(‘error_log’, ‘/path/to/custom_error.log’);
- 修改后重启服务使配置生效:sudo systemctl restart php7.x-fpm(或 apache2/nginx)。
四、快速排查清单
- 确认运行的是 Apache 还是 Nginx + PHP-FPM,并分别查看对应日志(Web 服务器错误日志与 PHP-FPM 日志)。
- 检查 PHP-FPM 池配置 的 error_log 路径是否与实际一致,必要时修正并重启 PHP-FPM。
- 验证 php.ini 语法:php -l /etc/php/7.x/fpm/php.ini;代码语法:php -l /var/www/html/index.php。
- 重启相关服务:sudo systemctl restart php7.x-fpm(或 apache2/nginx),再用 tail/journalctl 观察最新日志输出。
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: Debian PHP错误日志怎么看
本文地址: https://pptw.com/jishu/789582.html
