在php中自定义500错误页面

在php中自定义500错误页面,php,apache,codeigniter,Php,Apache,Codeigniter,我在codeigniter中有我的网站代码,我在php中使用Imagick融合图像。有很多函数可以生成500 HTTP错误。我需要创建一个定制的500错误页面,而不是普通浏览器的500错误页面 我已经读到,在.htaccess中使用ErrorDocument 500 error\u doc/500.html不会有任何帮助,因为Apache已经把它交给了PHP。但我还需要一个通用解决方案pan网站,该网站应自动检查500并显示所需的custon页面。Codeigniter实际上有一个自定义的500

我在codeigniter中有我的网站代码,我在php中使用Imagick融合图像。有很多函数可以生成
500 HTTP错误
。我需要创建一个定制的500错误页面,而不是普通浏览器的500错误页面


我已经读到,在
.htaccess
中使用
ErrorDocument 500 error\u doc/500.html
不会有任何帮助,因为Apache已经把它交给了PHP。但我还需要一个通用解决方案pan网站,该网站应自动检查500并显示所需的custon页面。

Codeigniter实际上有一个自定义的500错误页面。如果您发现您得到的是一个通用的500错误页面,那么可能是Apache覆盖了codeiginter 500错误页面

您可以在.htaccess中重写它,将其定向到您自己的自定义500.html,但这样您将错过CodeIgCenter提供的任何错误信息:

ErrorDocument 500 /errors/500.html


您还可以编辑在
/application/errors/
中找到的codeiginter 500错误页面。我认为这是
错误\u php.php
文件。

创建一个名为
500.shtml
的文件,并将其上载到public\u html或任何您的根上载目录。使用500.shtml文件创建500内部服务器错误自定义页面。

如果这些HTTP 500错误是由PHP错误引起的,我建议您实际修复或阻止它们,而不是创建自定义错误页面。我不敢相信会有一些PHP函数执行
标题(“HTTP/1.0 500内部服务器错误”)
。很抱歉,我没有理解你的意思。虽然我已经修复了错误,但我将此添加为一个备用选项。@BhumiSinghal,500错误表示脚本有问题。你不应该向公众发布一个有可能生成500的站点,因为这意味着你不会处理你的错误(尽管,如果你的服务器爆炸或其他事情,那可能是500。但是,你的服务器很可能在那时无法连接到互联网……)如果你没有解决方案,那就不要投反对票。不要只要求我解决已经解决的当前问题。有一个500错误页面是有意义的。狗屎可能会在运行时出错,开发人员可能无法处理所有事情。那么,您会向用户显示什么?按中的调用???我是否必须知道500错误可能出现在哪里?仅仅添加此语句意味着对于该页面,如果发生500错误,将自行处理?对不起,我将其保留在中是为了让您了解Exceptions类,我想这会混淆问题。我删除了它,只留下了答案。不起作用!我已经将其添加到.htaccess中,并创建了正确的html文件。我想我们可以在任何地方使用此自定义文件,而不是在应用程序/error中。我将使用.htaccess修复程序作为最后手段。编辑
应用程序/error/
文件夹中的现有错误文件是否正常?