Apache 500错误页不工作

Apache 500错误页不工作,apache,.htaccess,Apache,.htaccess,我正在设置LAMP服务器,并且在我的.htaccess文件中将一个html文档设置为我的500错误页面: RewriteEngine On RewriteBase / RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^ index.php [L,QSA] ErrorDocument 500 /500.html 但是,如果我试图调出一个包含一些乱码PHP代码的页面,那么我只会

我正在设置LAMP服务器,并且在我的
.htaccess
文件中将一个html文档设置为我的500错误页面:

RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^ index.php [L,QSA]

ErrorDocument 500 /500.html

但是,如果我试图调出一个包含一些乱码PHP代码的页面,那么我只会得到一个500错误,而不会收到
500.html
文档。

以下是如何触发500错误并调用500处理程序的方法:

ErrorDocument 500 /500.html

Options +ExecCGI
AddHandler cgi-script .foo

然后在site root下创建一个名为
abc.foo
的文件,其中包含一些随机文本。

@anubhava您有其他方法来测试500个错误吗?我想这就是我所说的乱码PHP。我在我的
index.php
中添加了一些随机文本,用于路由。对于乱码文本,您还需要此
ExecCGI
选项和
AddHandler
来触发500Well,如果没有这两行代码,我就可以用乱码PHP触发500错误,当我将它们添加到
.htaccess
文件的底部时,它会导致
index.PHP
从浏览器下载而不是处理。确定检查更新的答案,确保创建一个扩展名为
.foo
的文件,并放置一些乱码文本导致500并调用
ErrorDocument
我也添加了这些行,用随机文本字符串创建了
abc.foo
,然后在浏览器中打开文件以查找。。。我输入的状态码为200的随机文本字符串。我只想重申,通过将乱码PHP放入
index.PHP
中创建500错误没有问题,我的问题是将
500.html
与500状态代码一起提供。