301重定向目录中不遵循当前规则的所有404页面

时间:2013-02-28 10:54:30

标签: .htaccess mod-rewrite

我目前在.htaccess文件中有此代码

RewriteCond %{QUERY_STRING} !product_id=(.*)
RewriteRule ^(.*)$ http://www.myurl.com/index.php [R=301]

此301根据产品ID将产品URL重定向到我的根目录。 (我没有成功,我是从其他人那里得到的)

我需要做的是保留此规则,同时将同一目录中的任何404页面重定向到主页。

1 个答案:

答案 0 :(得分:0)

您可以尝试在之前添加这些规则

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^ /? [L,R=301]

这假设您正在谈论的主页是文档根目录。例如,如果/blah不存在且通常会产生404,那么转到http://yourdomain.com/blah会重定向到http://yourdomain.com/