这是以前从未发生过的。通常它会显示错误,但现在它只会给我一个500内部服务器错误。当然以前,当它显示错误时,它是不同的服务器。现在我在一个新的服务器上(我有完整的根目录,所以如果我需要在php.ini中的某个地方配置它,我可以这样做)。或者可能是与Apache有关的东西?
我一直在忍受它,只是将文件传输到我的另一台服务器上,并在那里运行它来查找错误,但这变得太乏味了。有没有办法解决这个问题?
发布于 2010-04-22 09:49:25
检查php.ini
文件中的error_reporting
、display_errors
和display_startup_errors
设置。它们应该分别设置为E_ALL
和"On"
(尽管您不应该在生产服务器上使用display_errors
,因此如果您部署它,请禁用此选项并使用log_errors
)。您还可以在脚本的最开始更改这些设置(display_startup_errors
除外),以便在运行时设置它们(尽管您可能无法以这种方式捕获所有错误):
error_reporting(E_ALL);
ini_set('display_errors', 'On');
之后,重启服务器。
发布于 2016-05-25 11:53:35
在命令行中使用php -l <filename>
(这是一个'L')输出语法错误,这可能会导致PHP抛出状态500错误。它将输出类似如下的内容:
PHP Parse error: syntax error, unexpected '}' in <filename> on line 18
发布于 2014-08-04 09:53:07
值得注意的是,如果您的错误是由于.htaccess引起的,例如缺少rewrite_module,您仍然会看到500内部服务器错误。
https://stackoverflow.com/questions/2687730
复制相似问题