使用.htaccess和强制“www。”在您的网站上强制使用SSL。在URL的开头

时间:2013-09-16 23:43:36

标签: apache .htaccess ssl web https

我正在使用此代码并成功强制执行ssl:

RewriteEngine On
RewriteCond %{HTTP_HOST} www\.example\.com
RewriteCond %{SERVER_PORT} 80
RewriteRule ^(.*)$ https://www.example.com/$1 [R,L]

然而它并没有强迫www在网址的开头。我把这个假设的解决方案发布在另一个页面上:

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

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

但是当我尝试打开我的页面时,我得到的是:“Firefox检测到服务器正在以永远无法完成的方式重定向此地址的请求。”

我怎么能解决这个问题,也就是说,不仅强迫ssl而且强迫网址开头的网址?

感谢。

1 个答案:

答案 0 :(得分:1)

尝试:

RewriteCond %{HTTPS} off [OR]
RewriteCond %{HTTP_HOST} ^example\.com$ [NC]
RewriteRule ^(.*)$ https://www.example.com/$1 [R,L]