使用.htaccess添加www前缀

时间:2017-03-24 00:55:55

标签: .htaccess mod-rewrite

我有一个托管在godaddy上的网站。使用apache。 我在.htaccess中使用此代码自动将www前缀添加到域

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

但不是'www.example.com',而是转到'www.example.com/web'

我只想将'example.com'转换为'www.example.com'

2 个答案:

答案 0 :(得分:0)

如果您只想将example.com转换为www.example.com,则只需使用:

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

你也可以这样说出来:

RewriteEngine On
RewriteCond %{HTTP_HOST} !^www\.
RewriteRule ^(.*)$ http://www.%{HTTP_HOST}%{REQUEST_URI} [R=302,L,NE]

确保在测试之前清除缓存。你会注意到我只是标志R=302。这是一个临时重定向,在您进行测试时使用它。如果您对RewriteRule感到满意并且一切正常,请将其更改为R=301,这是永久重定向。

答案 1 :(得分:0)

使用此

解决
RewriteEngine on
RewriteCond %{HTTP_HOST} ^example.com$ [NC]
RewriteRule (.*)$ http://www.example.com/$1 [R=301]
RedirectMatch 301 ^/web/$ http://www.example.com/