LNMP模式下如何開啓PHP錯誤日志?訪問網站提示500錯誤如何解決?

字號+ 編輯: 国内TP粉 修訂: 秃顶萧峰 來源: 2023-09-12 我要說兩句(0)

如果服務器頁面出現500錯誤, 如果沒有做特殊的頁面狀態碼返回的話,首先應該覺察到一般是後耑程序報了錯拋出了意外錯誤。

为了便于查找问题, 首先建议开发者打开php错误日志, 以便通过php错误日志来排错。

LNMP下的错误需要编辑以下这个文件----假设你的php被安装到了/usr/local/php 那么配置文件就应该在以下位置:

/usr/local/php/etc/php-fpm.conf

加上

php_admin_value[error_log] = /usr/local/php/var/log/php_errors.log
php_admin_flag[log_errors] = on

或在/usr/local/php/etc/php-fpm.conf里设置,加上catch_workers_output = yes,错误信息就会记录到php-fpm.conf里error_log设置的文件里。

上述两种方法都行,重启php-fpm生效

同理php.ini里的display_errors也是需要在php-fpm.conf里设置的,加上php_flag[display_errors] = On就开启了。

有时因为权限等问题, 可能错误日志文件不会自动创建,可以执行

touch /usr/local/php/var/log/php_errors.log && chown www:www /usr/local/php/var/log/php_errors.log

这个命令就可以了。

还有的同学喜欢在php.ini里面配置, 那么就要在php.ini里面查找error关键字, 一个一个地根据需要改, 重点就是以下两项:

log_errors=On # 打开日志记录
error_log=绝对路径地址

本文只细讲在php-fpm.conf里的改法, 就不再赘述php.ini的改法。

如果还是捕获不到错误怎么办?

那就要查看项目代码头部当中是否有配置到ini_set和error_reporting()这两个函数是否把错误报告给关了或者引导到别处去了。

开启PHP错误日志的其他方式

LAMP和LNMPA下开启错误日志的方法是:编辑

/usr/local/php/etc/php.ini

查找

;error_log

加上

error_log=/var/log/php_errors.log

然后重启apache生效。

出了问题你就在用vim或者cat命令在/var/log/php_errors.log里面找

有时候上面设置可能无法记录下日志,可以尝试把错误日志设置一下, 在php.ini里

error_log = syslog

这样就会输出到系统日志里,一般是 /var/log/messages 日志文件中会记录php报错的相关信息。

閲完此文,您的感想如何?
  • 有用

    1936

  • 沒用

    118

  • 開心

    1603

  • 憤怒

    39

  • 可憐

    22

1.如文章侵犯了您的版權,請發郵件通知本站,該文章將在24小時内刪除;
2.本站標注原創的文章,轉發時煩請注明來源;
3.交流群: 2702237 13835667

相關課文
  • mac開發接入微信公衆號接口返回報錯 cURL error 56: SSLRead() return error -9806

  • PHP的換行符是什麽

  • pecl安裝程序時報錯Array and string offset access syntax with curly braces is no longer supported

  • 由於商家傳入的H5交易參數有誤,該筆交易暫時無法完成,請聯繫商家解決

我要說說
網上賓友點評