自定义页面错误 500 的错误


Error for customize page error 500

我不知道

为什么我不能自定义错误 500,但它对 404、403 有好处

我有这样的文件夹

  • 万维网
    • 索引.php
    • .htaccess (2)
  • 错误
    • 索引.php
  • .htaccess (1)

第一个 HT访问

RewriteEngine on
RewriteBase /
# Error
ErrorDocument 403 /error/index.php?error=403
ErrorDocument 404 /error/index.php?error=404
ErrorDocument 500 /error/index.php?error=500

其次

RewriteEngine on
RewriteBase /
RewriteRule ^(.+)/$ /www/index.php?v=$1 [QSA,L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.+)$ /www/index.php?v=$1 [QSA,L]

谢谢

自定义错误 500 页是最难使用的。问题是,服务器可以抛出500 internal server error的原因有很多。仅当 Apache 可以处理 500 的原因以显示页面时,500 的自定义页面才有效。例如,假设您在 .htaccess 页面或 apache 配置文件中犯了一个语法错误,它会抛出一个500 server error,但由于 Apache 是down,它无法提供包括该自定义页面在内的任何内容,因此您将获得浏览器的默认页面。此外,根据您如何进行PHP错误报告设置,您也不会获得500自定义页面。还有很多,自定义 500 页面几乎是无用的,因为大多数人永远不会看到它。你会在他们之前知道,因为它是一个 500 通常是configuration问题,比如代码中的语法错误。

503是用户将看到的最常见的页面,特别是如果您的网站因维护而关闭,而这些是我会关注的页面。

无论如何,我会看看这个链接,以查看有关 500 个自定义页面的更多信息,了解它何时以及为什么不起作用。

Apache 的 ErrorDocument 指令不会重定向。

也来自 Apache 文档

尽管大多数错误消息都可以覆盖,但有一定的 使用内部消息的情况,无论 错误文档的设置。特别是,如果格式错误的请求 检测到,正常的请求处理将立即停止,并且 返回内部错误消息。这是必要的防范 错误请求导致的安全问题。

http://httpd.apache.org/docs/2.4/mod/core.html#errordocument