.htaccess重定向到“https:// www”

时间:2013-01-09 14:47:52

标签: .htaccess redirect ssl web

我正在寻找一个.htaccess配置,它会将对我网站的所有请求重定向到https://www

所以用户是否访问:

www.example.com
http://example.com
http://www.example.com
https://example.com

他们总是最终会:

https://www.example.com

以下是我目前在.htaccess文件中使用的内容,但是如果用户访问则不会重定向:

www.example.com

这是我目前的文件内容:

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

我已尝试过Stack Overflow上提供的各种解决方案,但它们似乎都没有按预期工作,通常会导致重定向循环。希望有人能比我更了解这一点。

1 个答案:

答案 0 :(得分:1)

您的正则表达式^example\.comwww.example.com不匹配。您可能想要(^|\.)example\.com(^|\.)example\.com($|:)

修改

要防止重定向循环添加

RewriteCond %{HTTPS} off

在RewriteRule之前。

另请参阅http://wiki.apache.org/httpd/RewriteHTTPToHTTPS(他们使用!=on代替off)和http://wiki.apache.org/httpd/RedirectSSL