8wDlpd.png
8wDFp9.png
8wDEOx.png
8wDMfH.png
8wDKte.png

Apache 的 ErrorDocument 指令不会重定向

squeezeitthroughthekeyhole 1月前

42 0

我的 .htaccess 文件中有一堆 ErrorDocument 指令,以便捕获 Apache 可能向用户抛出的几乎所有错误,并将该用户重定向到我的错误控制器,该控制器将...

我的 .htaccess 文件中有一堆 ErrorDocument 指令,用于捕获 Apache 可能向用户抛出的几乎所有错误,并将该用户重定向到我的错误控制器,该控制器随后会以更用户友好的方式呈现错误。但是,这似乎不起作用。

例如,当我输入无效 URL(如 mysite.com/\'\'##$##$!)时,我总是收到 Apache 的默认 403 错误消息,而不是重定向到我的 errors.php 文件。下面是我使用的指令。我还需要做其他事情才能使其正常工作吗?(AllowOverride All 已设置)

   ErrorDocument 403 /errors.php

如果这是处理绝对自定义错误错误的错误方法,请告诉我,我将非常感激您在正确方向上的推动。

谢谢你!

编辑:哦,我只是想提一下这个。我编写了自己的 MVC 结构来重定向请求,效果很好。在 PHP 中,如果用户请求不存在的 URL,我自己的 404 错误就会触发(或我定义的任何其他错误)。所以基本上,如果我在 URL 中输入 mysite.com/!!!!,它会起作用,我会得到 404。但是,每当我使用双引号字符开始请求时,就会触发默认的 Apache 403 错误。奇怪。此外,500 错误也将无法重定向到 errors.php,只会返回默认的 Apache 500 屏幕(例如,当使用 header(\'HTTP/1.0 500 Internal Server Error\');die(); 进行测试时)。

编辑 3:我刚刚尝试将其放入 ErrorDocument 200 "message" 我的 .htaccess 文件中,但什么也没发生,我打开的任何页面都会正常打开。最坏的情况是,这会陷入无限循环。最好的情况是,它应该输出 \'message\'。但它什么也没做,只是忽略了 ErrorDocument。Apache 的访问日志记录了一个正常的 200 OK 标头,但它被 .htaccess 完全忽略了。

帖子版权声明 1、本帖标题:Apache 的 ErrorDocument 指令不会重定向
    本站网址:http://xjnalaquan.com/
2、本网站的资源部分来源于网络,如有侵权,请联系站长进行删除处理。
3、会员发帖仅代表会员个人观点,并不代表本站赞同其观点和对其真实性负责。
4、本站一律禁止以任何方式发布或转载任何违法的相关信息,访客发现请向站长举报
5、站长邮箱:yeweds@126.com 除非注明,本帖由squeezeitthroughthekeyhole在本站《apache》版块原创发布, 转载请注明出处!
最新回复 (0)
  • 是的,权限没问题。我甚至尝试用字符串代替文件,比如 \'blah\',因为 Errordocument 应该在收到任何非 url 信息时输出消息,对吗?那也行不通。

返回
作者最近主题: