域转发.htaccess

时间:2010-09-21 22:36:12

标签: .htaccess mod-rewrite

如何将short-dom.com转发至long-domain.com?

我一直在看例如:

RewriteCond %{HTTP_HOST} ^a\.com$ [NC]
RewriteRule ^(.*)$ http://www.a.com/$1 [L,R=301]

RewriteCond %{HTTP_HOST} ^b\.com$ [NC]
RewriteRule ^(.*)$ http://www.b.com/$1 [L,R=301]

但是这些不允许我指定我的短域名(所有组合 - 有或没有www。)...

1 个答案:

答案 0 :(得分:0)

在您的问题的示例中,您指定域的位置在RewriteCond的行上。

例如,这个条件

RewriteCond %{HTTP_HOST} ^old\.example\.com$ [NC]
如果http请求中的主机名(%{HTTP_HOST})与后面的正则表达式匹配,则

将匹配。您的示例将匹配“a.com”,而我的匹配“old.example.com”。

表示RewriteRule的行将进行实际重写。在您的示例中,它将替换

http://a.com/anything

http://www.a.com/anything

通过替换与新URL匹配的正则表达式。

^(.*)$匹配整个请求,$1将其替换为新网址。