訪問http網站,和服務器交互的步驟
瀏覽器向服務器發起一次HTTP請求
服務器返回一個重定向地址
瀏覽器在發送一次HTTPS請求,獲得最終內容nginx
上面瀏覽器發送http請求後容易被攔截,使用HSTS後能夠避免
瀏覽器發送http請求,瀏覽器本身將http轉爲Https請求
在訪問服務器
服務器返回內容瀏覽器
HSTS:HTTP Strict-Transport-Security安全
服務器返回給瀏覽器的響應頭中,添加以下
Strict-Transport-Security: max-age=31536000; includeSubDomains;preload
max-age是設置時間,必填
includeSubDomains是否包含子域名,選填
preload選填
在接下來一年(31536000秒),對於當前域名及其子域名的後續通訊強制使用HTTPS
有效期是最近兩次操做的間隔時間服務器
啓用了瀏覽器HSTS保護的網站,若是瀏覽器發現當前鏈接不安全,僅僅是警告用戶,再也不給用戶提供是否訪問的選擇網站
瀏覽器內置一個列表,只要在列表中的域名,都是用HTTPS發起鏈接域名
nginx能夠配置HSTS
add_header Strict-Transport-Security "max-age=31536000; includeSubDomains" always;
在生產環境中使用要特別謹慎,不然剛好證書出問題,這個時間設置過長會出現沒法訪問it