PHP错误报告:Wordpress

时间:2017-05-30 07:31:24

标签: php wordpress plesk

当我收到PHP错误时,会出现500内部服务器错误页面。我希望它能显示致命的错误。我花了几天时间试图让它显示正确的错误。这是我到目前为止所尝试的:

1)按照此处所述编辑wp-config.php文件:https://help.massivedynamic.co/hc/en-us/articles/115000572108-How-to-enable-WordPress-error-reporting。我尝试了显示错误和创建日志的选项。

2)访问Plesk并根据https://support.managed.com/kb/a1937/how-to-enable-php-error-logging-in-plesk-11.aspx进行更改。这似乎将user.ini文件更改为:error_reporting(E_ALL); ini_set('display_errors', 'on'); echo "aaa"; ob_flush();。我也试过手动更改目录,但无济于事。

3)在页面标题中添加各种代码。 context.putVar("collection1", collection1); context.putVar("collection2", collection2); xlsHelper.getInstance().processTemplate(getClass().getClassLoader().getResourceAsStream("templates/exceldocument.xls"), os, context); 是其中之一。

有谁能建议我还能尝试什么?

谢谢。

3 个答案:

答案 0 :(得分:1)

500是代码错误或服务器系统错误。

您可以执行以下几项调试:

  • 确保您在php.ini(或脚本顶部)中有完整的错误报告
  • 尝试更简单的代码,以确保服务器不会抛出错误。
  • 使用xdebug逐步执行代码,直到找到失败的位置。然后使用try / catch尝试找出错误实际上是什么。
  • 查看服务器日志,如果您有权访问它们。
  • 为您正在使用的代码部分编写正确的单元测试(您是否正在编写测试?)。通常,使用单元测试更容易隔离问题,而不是当代码是更大的应用程序的一部分时。
  • 使用echo和var_dumps来尝试查看代码落在哪处。

完整的错误报告。如果您无权访问php.ini,请将其放在脚本的顶部:

error_reporting(E_ALL);

答案 1 :(得分:0)

您可以通过访问虚拟主机的Apache错误日志文件来查看错误。

如果您的虚拟主机名为example.com,那么您的错误日志文件应位于/var/www/vhosts/example.com/logs/error.log

答案 2 :(得分:-1)

在wordpress root中搜索error_log文件。根据您的设置,它在那里,或在您的wamp stack日志文件夹中。 就像已经评论过的那样,500不是PHP错误,而是服务器错误,所以你不能用PHP打印它。