首頁透過 HTTPS 提供,卻透過一般 HTTP 載入部分指令碼、樣式表或框架。瀏覽器會封鎖這些檔案,因此網頁的部分內容可能故障或顯示異常。
這代表什麼
這稱為主動式混合內容。透過一般 HTTP 傳送的檔案可能在傳到訪客的途中遭到竄改,而指令碼或樣式表能控制整個網頁,所以瀏覽器會拒絕載入。選單、表單、追蹤或網頁設計都可能悄悄失效。
觸發條件
「安全標頭」檢查每週會透過 HTTPS 載入一次首頁,並在其 HTML 中搜尋網址以 http:// 開頭的指令碼、樣式表、預先載入的檔案、框架、嵌入內容和物件。只要找到任何一個,就會提出這個「高」問題,附上數量和一個範例網址,並透過電子郵件和聊天向擁有者和管理員發出一次警示。
只會檢查伺服器傳回的首頁 HTML,因此其他網頁以及之後由指令碼加入的檔案都偵測不到。
常見原因
- 佈景主題、範本或內容中寫死的 http:// 網址,是網站改用 HTTPS 之前留下的。
- 小工具、地圖或表單的舊嵌入程式碼。
- CMS 的網站網址設定仍以 http:// 開頭。
如何修正
- 在 Chrome 中開啟首頁,按下 F12,在 Console 中尋找「Mixed Content」訊息,其中會列出每個受影響的檔案。
- 將每個網址改為 https://,並確認檔案能以這種方式載入。如果提供者不支援 HTTPS,請將檔案放在你自己的網站上,或換掉它。
- 在 WordPress 等 CMS 中,確認網站網址設定使用 https://,然後在資料庫中搜尋並取代舊的 http:// 連結。
何時解除
這項檢查每週執行一次,因此問題會在下一次每週檢查不再發現問題時消失,其行動則會在 7 天後從行動計畫中移除。
如果你將行動標記為完成,但 14 天後仍發現問題,它會以「修正未生效」重新出現。請參閱 使用行動計畫。