htaccess:在RewriteCond中排除某些域名

时间:2011-04-13 14:51:25

标签: apache .htaccess

这是我的.htaccess代码 因此,如果用户类型只是domain.com将被重定向到www.domain.com

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

我现在的问题是我有一个指向同一域路径的新域名 所以即使新域名也“透明地”重定向到domain.com ......

如何从该规则中排除某些域名?

谢谢!

1 个答案:

答案 0 :(得分:8)

您可以尝试将重写设为通用,因此所有未以www开头的请求都会被重定向,但会在正确/请求的域中重定向。

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

或者,您可以检查域名是否以domain.com开头:

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

希望这有帮助。