我有一个网站托管在 godaddy 上。我在 .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">
如果您只想将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
,这是一个永久重定向。
通过使用这个来解决
RewriteEngine on
RewriteCond %{HTTP_HOST} ^example.com$ [NC]
RewriteRule (.*)$ http://www.example.com/$1 [R=301]
RedirectMatch 301 ^/web/$ http://www.example.com/