初次使用http打不開頁面,使用https打開過后使用http協議又能正常訪問


http協議為什么打不開https站點

在訪問一個https的站點,比如 https://www.aaa.com,首次訪問時,訪問的地址是 http://www.aaa.com,(不加S),出現的是網站不可用,打不開,再次使用https進行訪問,就能正常打開。隨后在使用http協議進行訪問,會自動重定向到https的域名,這是瀏覽器緩存之后自動重定向的行為,或者是服務器端沒有做好http到https站點的重定向?

 

其實是這樣的,第一次訪問http頁面,由於服務器端沒有做好301重定向,所以出現鏈接斷開無法訪問,第二次正常訪問https站點時,支持HSTS的瀏覽器響應頭含有Strict-Transport-Security: max-age=31536000;意思是在接下來的一年(即31536000秒)中,瀏覽器只要向xxx或其子域名發送HTTP請求時,必須采用HTTPS來發起連接。比如,用戶點擊超鏈接或在地址欄輸入 http://xxx/ ,瀏覽器應當自動將 http 轉寫成 https,然后直接向 https://xxx/ 發送請求。

瀏覽器支持

HSTS對瀏覽器的支持不盡相同:

Chromium和Google Chrome從4.0.211.0版本開始支持HSTS
Firefox 4及以上版本
Opera 12及以上版本
Safari從OS X Mavericks起
Internet Explorer從Windows 10技術預覽版開始支持,之后微軟又向IE11用戶推送了支持HSTS的更新。
 
 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM