使用htaccess将所有流量从根重定向到特定的子域页面

时间:2009-02-13 01:30:13

标签: .htaccess mod-rewrite redirect subdomain

我的网站已经有一段时间了。有一段时间我在子域上有一个博客。我决定取消主网站,只支持博客子域。

我有一个重定向设置,但它将所有额外的参数传递到博客,导致找不到文件找不到页面。我只是希望重定向转到没有参数的索引页面。

我目前在.htaccess文件中的内容是

RewriteCond %{HTTP_HOST} ^.*$
RewriteRule ^/?(.*)$ "http\:\/\/blog\.foo\.org\/index\.php" [R=301,L]

当我收到

的请求时

http://www.foo.org/foo/foo/?module=foo

重定向到

http://blog.foo.org/foo/foo/index.php?module=foo

我希望它重定向到 http://blog.foo.org/index.php

2 个答案:

答案 0 :(得分:3)

您必须在替换中指定查询以覆盖原始:

RewriteCond %{HTTP_HOST} !^blog\.example\.org$ [NC]
RewriteRule ^ http://blog.example.org/index.php? [R=301,L]

答案 1 :(得分:1)

RewriteEngine On
Options +FollowSymlinks
RewriteCond %{HTTP_HOST} ^(www\.)?foo\.org$ [NC]
RewriteRule ^ http://blog.foo.org/ [R=301,L]