如何修改.htaccess文件以始终重定向到www

时间:2010-11-11 20:44:13

标签: .htaccess redirect

我想修改我的.htaccess文件,以便当有人在没有输入www的情况下进入我的网站时,该网站总会将它们重定向到www版本。例如,如果我的网址是www.abc.com并且他们只输入abc.com,我想将它们重定向到abc.com。

这是我当前的htaccess文件:

<IfModule mod_rewrite.c>
   RewriteBase /
   RewriteEngine on
   RewriteRule    ^$ app/webroot/    [L]
   RewriteRule    (.*) app/webroot/$1 [L]  
</IfModule>

通常情况下,我知道如何进行重定向,但因为它已经有了几行,所以我遇到了问题。

4 个答案:

答案 0 :(得分:30)

我使用下面的代码。它可以用于任何域名。您只需要在.htaccess文件中输入它。

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

(编辑为将所有代码放在同一个块中)

答案 1 :(得分:19)

RewriteEngine on之后立即添加类似内容:

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

答案 2 :(得分:1)

有两种方法可供选择

1)使用mod_alias apache模块

重定向永久/某事http://yourwebsite.com/something

2)在.htaccess / http.conf / yourwebsite.conf中的webserver configuarion目录中添加以下条目

RewriteEngine on RewriteCond%{HTTP_HOST} ^ yourwebsite.com RewriteRule ^(。*)$ http://www.yourwebsite.com $ 1 [R =永久,L]

答案 3 :(得分:1)

如果您想将example.com重定向到www.example.com,可以尝试以下代码

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