.htaccess ErrorDocument重定向

时间:2011-05-23 21:03:45

标签: php apache .htaccess http-status-code-404 relative-path

我是Apache和.htaccess的新手,我有一个关于如何使用Apache的ErrorDocument命令处理403和404错误的简单问题。

让我们看看我写的早期CMS中的代码:

ErrorDocument 404 /admin/includes/access_deny.php?error=404

当用户收到404错误时,会以静默方式将用户重定向到http://www.mysite.com/admin/includes/access_deny.php?error=404

这是我的问题,关于.htaccess文件,此错误文档将始终位于同一位置。但是,如果我需要移动我的安装,比如说subfolder目录,我将需要打开.htaccess文件并对其进行更新,以使其正常工作:

ErrorDocument 404 /subfolder/admin/includes/access_deny.php?error=404

我有没有办法.htaccess重定向到这个页面admin/includes/access_deny.php?error=404关于文件本身,而不是绝对URL?此外,无论我将来在何处移动安装,Apache都会捕获同一级别或子目录中的所有404错误。

如果不清楚,请告诉我。

感谢您的时间。

1 个答案:

答案 0 :(得分:4)

来自manual

URL可以以本地Web路径的斜杠(/)开头(相对于DocumentRoot),也可以是客户端可以解析的完整URL。或者,可以提供消息以供浏览器显示。

This thread可能会帮助您解决问题。