使用.htaccess重定向404内容的规则

时间:2012-07-02 16:17:33

标签: php .htaccess http-status-code-404

我们常常在www.domain.com/dev/放置网站,然后在客户注销网站后将其移至顶级www.domain.com,我们希望能够将.htaccess文件放在顶层,这样一旦我们将网站移出/ dev,如果客户端意外地转到www.domain.com/dev/apage.php,他们会被重定向到www.domain.com/apage.php,但只有{{1} }}不存在。

有时dev文件夹会被调用各种其他东西,理想情况下我们不想编辑.htaccess文件以匹配文件夹名称。

感谢您的帮助。

1 个答案:

答案 0 :(得分:1)

您可以执行类似

的操作

根据评论编辑:

RewriteEngine On

RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule dev/(.*)$ $1 [R=301,L]

这基本上意味着如果文件不存在 - RewriteCond %{REQUEST_FILENAME} !-f - 那么将任何请求重写回dev。您必须在重写规则中指定dev /,否则您将陷入重定向循环。

这只适用于您使用显式文件而不是框架,其中所有内容都通过index.php路由