重定向告訴人們輸入http://www.example.com
去https://www.example.com
。既然默認是http,如果你離開協議,只需鍵入www.example.com
,那麼你會去http://www.example.com
所以是的,你需要這個重定向。
雖然這有幾個問題。
首先,http是不安全的,可以被網絡上的其他人讀取和更改。這就是你應該使用https的原因。但是,由於http不安全,這意味着他們可以攔截您的重定向並使您保持http版本並繼續攔截您的流量。或者改爲將您重定向至https://www.evilexample.com
。
HTTP嚴格傳輸安全性(或HSTS)是一種安全機制,試圖解決此問題。你的服務器告訴瀏覽器總是使用https爲該網站。即使不輸入協議(通常會使用http),即使您將協議鍵入爲http。
一旦瀏覽器爲一個站點加載了HSTS,它甚至不會發送http請求,而是自動將它們改爲https。這有幾個優點:
- 它更安全,因爲它不能被攔截。
- 它更快,因爲不會浪費時間發送請求到
http://www.example.com
只是被告知去https://www.example.com
。
- 它可以用來解決混合內容錯誤,因爲http資源(僅適用於該網站,但不能從其他網站加載)會在您意外添加http源時自動更改。內容安全策略的升級不安全請求可能是更好的解決方案,但HSTS仍然提供基本版本。
此外,另一個答案指出,另一個單獨的好處是,此設置也意味着瀏覽器不會允許訪問者點擊通過證書錯誤的網站,從而爲攻擊增加額外的安全性。
HSTS的主要缺點是:
- 你的網站需要只爲https - 這似乎是顯而易見的,但很容易只在http錯過了站點的一部分。或者如果使用includeSubdomain選項,則使用http上的子域名。
- 訪問者需要首先訪問該網站才能獲取HSTS策略,儘管您可以將其預先加載到瀏覽器中,但這不是一個可能的決定。
- 瀏覽器支持尚未普及。即使是搜索引擎等使用的抓取工具也可能不會使用它。
所以希望這可以解釋爲什麼HSTS是一件好事,你應該保持。在重定向之上。
謝謝。我會保持原樣。我一定會考慮將我的網站添加到預加載列表中,但可能不適合任何客戶。 –
說實話,我不是一個大規模的預壓風扇。正如我在這裏解釋的:https://www.tunetheweb.com/blog/dangerous-web-security-features/ –
很高興我讀到,在添加任何網站的名單。非常感謝! –