使用这些指令,我可以将任何non-www
子域重定向到www
子域:
RewriteEngine On
RewriteCond %{HTTP_HOST} !^(www\.|$) [NC]
RewriteRule ^ http://www.%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
我需要实现的是仅重定向www
子域。
例如,我想仅将blog.myname.com
重定向到www.blog.myname.com
。上面配置中的规则会将blog.myname.com
重定向到www
,但它也会将myname.com
重定向到www.myname.com
,这不是我想要的。我还需要重定向所有查询的子域而不仅仅是blog.myname.com
我该怎么做?
答案 0 :(得分:2)
尝试:
RewriteEngine On
RewriteCond %{HTTP_HOST} ^blog\.myname\.com$ [NC]
RewriteRule ^ http://www.blog.myname.com{REQUEST_URI} [L,R=301]
答案 1 :(得分:2)
您可以使用此代码来实现:
RewriteEngine On
RewriteCond %{HTTP_HOST} ^((?!www)[^\.]*)\.myname\.com$ [NC]
RewriteRule ^ http://www.%1.myname.com%{REQUEST_URI} [L,R=301]
以上代码重定向所有子域但不会影响myname.com
或www.myname.com
。