通过htaccess将非WWW网址重定向到WWW网址

时间:2011-08-10 09:57:29

标签: .htaccess

我在Windows操作系统上使用apache 2.2, 我需要将非www网址重定向到www网址,我在线查看,发现这似乎适用于很多

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

但如果我使用相同的重写规则,我最终会得到一个带有点的www网址:

前:

http://example.com/test redirects to
http://www.example.com.
$1 is "." and its failing to add all params

1 个答案:

答案 0 :(得分:1)

确定!
你把它放在.htaccess文件:

RewriteCond %{HTTP_HOST} ^mysite\.local [NC] 
RewriteRule ^(.*)$ mysite.local/$1 [R=301,L] 

这意味着如果host等于mysite.local(未提及主机的末尾!),那么每个url都会重定向到目录mysite.local
你应该用这个:

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

所以托管IS不等于www.mysite.local的每个网址都会重定向到这个网址!但请记住,如果你想创建子域名,请将此子栏目输出WWW.MYSITE.LOCAL文档根页! (它更好!)