当访问者输入www时,重写需要修复。在开始

时间:2015-06-17 11:45:59

标签: php .htaccess

我想引导访问者访问https网址,因此如果访问者键入domain.com,则使用以下代码,他将转到https://www.domain.com

但如果他输入www.domain.com,他会转到https://www.www.domain.com

我该如何避免这种情况?

RewriteEngine On
RewriteCond %{HTTPS} !on
RewriteRule (.*) https://www.%{HTTP_HOST}%{REQUEST_URI}

1 个答案:

答案 0 :(得分:0)

这对我有用:

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

如果主机不匹配,则第一条规则会将所有请求重定向到www.example.com(缺少www,但也"获取所有子域")。第二个规则使用HTTP将所有其他请求重定向到HTTPS。当然,您必须将example.com更改为您的域名。