2017-03-07 29 views
2

我寫了一個.htaccess腳本,似乎工作。不過,我對Apache很陌生,而且後來我經常發現我應該使用不同的方式構建或者使用更好的語義。是否有更智能/更好的方式來完成HTTPS/WWW重寫?

我的代碼的目標是確保wwwHTTPS總是存在於url中。我正在使用302進行測試。簡單地說就是這個代碼被擡高了嗎?有什麼痛苦的東西顯而易見,我應該改變?

<IfModule mod_rewrite.c> 
    RewriteEngine on 
    RewriteCond %{HTTPS} off 
    RewriteCond %{HTTP_HOST} !^www\. [NC] 
    RewriteRule .* https://www.example.com%{REQUEST_URI} [R=302,L] 
</IfModule> 

回答

0

要強制HTTPS和www,您可以使用此:

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

這將http://example.comhttps://example.com重定向到https://www.example.com

+0

有趣。如果用戶輸入「example.com」而沒有其他內容,它會重寫嗎? – DR01D

相關問題