2016-11-12 83 views
0

我已經使用letsencrypt爲域example.comwww.example.com創建了一個SSL證書並將其上傳到我的託管軟件包。該證書似乎工作得很好,如果我打開https://www.example.com該網站被標記爲安全。https和www重定向的問題

現在我想通過.htaccess文件基本上強制使用httpswww

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

到目前爲止,我已經嘗試了幾個不同的重寫規則在這裏從SO,但似乎沒有爲https使用加www。它總是說ERR_CONNECTION_REFUSED當開放https://example.com
我再次檢查了證書https://www.sslshopper.com/certificate-decoder.html,它列出了正確的地址(example.comwww.example.com)。我的託管包說www子域是預先配置的,不能更改。

希望有人能解釋我需要做什麼或出什麼問題。
我也想知道,如果我想做的事情很好,或者我在這裏做的不好。

+0

你能告訴我們你現在的嘗試? – anubhava

+0

我試過的最後一個是從這兩個職位:http://stackoverflow.com/questions/13977851/htaccess-redirect-to-https-www和http://stackoverflow.com/questions/24711083/forcing-ssl-和-www-using-htaccess – 0x1234

回答

1

您可以使用此單一規則爲您第一條規則執行httpswww

RewriteEngine On 

RewriteCond %{HTTP_HOST} !^www\. [NC,OR] 
RewriteCond %{HTTPS} off 
RewriteCond %{HTTP_HOST} ^(?:www\.)?(.+)$ [NC] 
RewriteRule^https://www.%1%{REQUEST_URI} [R=301,L,NE] 

# --- remaining rules go below this --- 
+0

@ 0x1234:這是否工作? – anubhava

相關問題