强制“www。”通过.htaccess

时间:2011-02-05 14:26:12

标签: apache .htaccess

我想强制“www。”在我的网址上(例如http://domain.com变为http://www.domain.com)。但是,我不希望强制使用已有子域名的网址(例如http://images.domain.com不应成为http://www.images.domain.com)。我在网上找到的以下片段是后者:

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

我需要做些什么才能让它适合我?感谢。

1 个答案:

答案 0 :(得分:5)

简单 以下规则强制使用www,但子域除外。

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

编辑并粘贴它,重新启动apache。

说明:

RewriteCond %{HTTP_HOST} =name.domain [NC]仅在有人键入name.domain(您的域名)时匹配。

当类型subdomain.name.domain时,RewriteCond为false而不是重定向。你明白? 在您之前发布的规则中,您匹配!(不)^(开头)www和subdomain.name.domain满意RewriteCond并且是您不想要的。 :)