如何使PHP显示错误而不是给我500内部服务器错误

2022-08-30 06:37:29

这在以前从未发生过。通常它显示错误,但现在它只是给我一个500内部服务器错误。当然,在此之前,当它显示错误时,它是不同的服务器。现在我在一个新的服务器上(我有完整的root,所以如果我需要在php中的某个地方配置它.ini,我可以。或者也许是Apache的东西?

我一直在忍受它,只是将文件传输到我的另一台服务器并在那里运行它以找到错误,但这已经变得太乏味了。有没有办法解决这个问题?


答案 1

检查文件中的 和 设置。它们应分别设置为 和(尽管不应在生产服务器上使用,因此请禁用此选项,并在部署时使用)。您还可以在脚本的最开头更改这些设置(()除外),以便在运行时进行设置(尽管您可能无法以这种方式捕获所有错误):error_reportingdisplay_errorsdisplay_startup_errorsphp.iniE_ALL"On"display_errorslog_errorsdisplay_startup_errors

error_reporting(E_ALL);
ini_set('display_errors', 'On');

之后,重新启动服务器。


答案 2

从命令行使用(即“L”)输出可能导致 PHP 引发状态 500 错误的语法错误。它将输出如下内容:php -l <filename>

PHP Parse error: syntax error, unexpected '}' in <filename> on line 18


推荐