【发布时间】:2018-03-29 19:03:11
【问题描述】:
发生 500 Internal Server Error 时如何显示自定义页面?
我创建了一个名为“500.php”的页面。
然后将以下行添加到我的“.htaccess”文件中以处理错误:
ErrorDocument 500 /500.php
以下行测试/触发 500 错误:
e
但会显示默认的 500 页面 - 不是我的自定义页面。
我尝试将第一行编辑为此(整个 URL):
ErrorDocument 500 http://danispringer.com/500.php
然后我收到“重定向过多”错误。
我该怎么做?
- 查看完整的 htaccess 文件:here
- 相关:
Mod Rewrite 500 Error Correction(不回答 - 使用重写 - 不是 ErrorDocument)
Trigger 500 Internal Server Error in PHP and display Apache error page(解释如何触发 - 不处理 - 错误)
Custom error page failed to load after editing htaccess(不t 回答 - 使用重写 - 不是 ErrorDocument)
Default Error Page PHP 500 errors in Apache(上面的重复没有答案)
error file .htacess 500 Internal Server Error(不回答 - 使用重写 - 不是 ErrorDocument)
【问题讨论】:
-
如果要使用 ErrorDocument,则不需要使用 RewriteRule。
-
ErrorDocument 500 /500.php就够了。 -
本身没有必要“触发”错误。如果以及何时脚本错误作为服务器错误。 Apache 接管并自动查找 ErrorDocument 500。
-
就是这样 ;-) 测试它的唯一方法是使用条件语句来说明一些不起作用的东西,以及一些有用的东西。所有能被捕获的Apache指令,都会被handle请求分别触发和处理。
-
将您的服务器设置设置为不显示错误但记录它们,然后故意在某处遗漏一个缺少的分号;这将触发服务器错误。最好我能补充一下,我们刚刚触发了“请避免在 cmets 中进行长时间的讨论。你想自动将此讨论转移到聊天中吗?”。这个问题可能会被模组关闭和/或触发“太健谈,转移到聊天......”。你需要让所有这些都沉入其中并尝试一些东西;-) 干杯。我相信我已经回答了一些。
标签: php apache .htaccess mod-rewrite shared-hosting