2014-09-27 156 views
1

我知道關於這方面的堆棧溢出有很多問題,但是我發現的解決方案似乎都沒有正常工作。.htaccess將所有請求重定向到非www https域?

我已經建立了一個SSL證書,要求它的域名是非www。

我想重定向用戶訪問我的網站,以https://example.com無論身在何處,他們都來了來自:

http://example.com成爲https://example.com

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

https://www.example.com成爲https://example.com

應簡單但不幸的是我沒有.htaccess的知識。我感謝任何幫助!

回答

1

您可以在DOCUMENT_ROOT/.htaccess文件中使用此代碼:

RewriteEngine On 

RewriteCond %{HTTPS} off [OR] 
RewriteCond ^www\. [NC] 
RewriteRule^https://example.com%{REQUEST_URI} [R=301,NE,L] 
+0

這個規則沒有子目錄工作正確的,但是當你添加子目錄,案例https://www.example.com/LineDemo。讓我知道你可以解決這個問題,並更新htaccess規則 – 2017-07-15 10:12:43

+0

此規則與子目錄無關。你可能有其他一些問題。請詳細解答一個新問題,我會盡力回答。 – anubhava 2017-07-15 10:45:06

+0

感謝Anubhava的快速回復,但我已經解決它在這篇文章的幫助下,https://simonecarletti.com/blog/2016/08/redirect-domain-http-https-www-apache/ – 2017-07-15 11:19:16

0

以下規則集滿足所有低於6的情況:

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


Cases: 
C1: http://example.com/ 
C2: http://www.example.com/ 
C3: https://www.example.com/ 

C4: http://example.com/LineDemo/ 
C5: http://www.example.com/LineDemo/ 
C6: https://www.example.com/LineDemo/ 
相關問題