Skip to content

網站顯示不安全怎麼辦?從瀏覽器警告反查憑證與混合內容

jc-seo

網站顯示不安全時,先看警告長什麼樣子再找原因。網址列出現「不安全」、頁面照常開啟,依 Chrome 說明是網站未使用私人連線,網站擁有者要改用 HTTPS,例如訪客開到的仍是 HTTP 網址;整頁被擋下、出現「你的連線不是私人連線」,通常和憑證驗證有關,畫面上的錯誤代碼會指出是效期、網域名稱還是簽發者不受信任;整頁紅色警告則是 Google 安全瀏覽機制把網站標記為不安全。以下依警告樣式整理站長的排查清單。

先分辨警告出現的位置與樣子

同樣是「此網站不安全」,網址列標示、整頁錯誤畫面與紅色警告背後是不同的問題,先對照下表判斷:

看到的畫面 代表的意思 優先檢查
網址列顯示「不安全」,頁面照常開啟 網站未使用私人連線 HTTP 是否轉到 HTTPS
整頁出現「你的連線不是私人連線」,附錯誤代碼 憑證沒有通過瀏覽器驗證 憑證效期、網域名稱、簽發者
整頁紅色警告 安全瀏覽機制將網站標記為不安全 是否遭入侵或被植入惡意內容
有鎖頭,但圖片破圖、樣式或功能異常 可能是混合內容被升級或封鎖 主控台的混合內容警告

判斷時同時記下完整網址(含 http 或 https、有沒有 www)與錯誤代碼,同一個網站的不同網址版本可能出現不同結果。

整頁警告:用錯誤代碼對照憑證問題

Chrome 的整頁錯誤畫面會附上錯誤代碼。對照 Chromium 原始碼裡的定義與 Chrome 說明中心,可以這樣縮小範圍:

  • NET::ERR_CERT_DATE_INVALID:依瀏覽器所在裝置的時鐘判斷,伺服器的憑證尚未生效或已過期。Chrome 說明中心也指出,裝置日期或時間不正確就會出現這類錯誤。
  • NET::ERR_CERT_COMMON_NAME_INVALID:憑證上的名稱和網址的主機名稱不符,可能是伺服器回應了錯的憑證,例如憑證只涵蓋有 www 的網址,訪客卻開了沒有 www 的版本。
  • NET::ERR_CERT_AUTHORITY_INVALID:憑證的簽發者不受瀏覽器信任,例如伺服器使用自簽憑證。Chrome 說明中心另提到,公司電腦的 Proxy 若執行 HTTPS 攔截,也會出現這個錯誤。
  • ERR_SSL_VERSION_OR_CIPHER_MISMATCH:瀏覽器與伺服器沒有共同支援的通訊協定版本或加密方式,要由網站擁有者更新主機的 TLS 設定。

排查時直接檢視伺服器實際提供的憑證,確認網域名稱、簽發者與有效期間;中繼憑證與私鑰配對問題,可參考SSL憑證安裝的關鍵環節。

網址列顯示不安全:HTTP 頁面與混合內容

依 Chrome 說明中心,網址列標示不安全代表網站未使用私人連線,其他人或許可以查看及變更訪客與網站間的資訊。站長要確認網站已有有效憑證,而且訪客從 HTTP 網址進站時會被轉到 HTTPS。

混合內容是另一種情況:頁面本身用 HTTPS 載入,卻引用 HTTP 開頭的資源。依 MDN 的說明,瀏覽器會把圖片、音訊、影片這類可升級的請求自動改成 HTTPS;指令碼、樣式表、內嵌框架、網頁字型等其他類型則會被封鎖。所以混合內容的症狀常是破圖、版面跑掉或功能失效,而不一定是網址列的警告。

  • 瀏覽網站時打開開發人員工具的主控台,混合內容被升級或封鎖時會顯示警告。
  • 站內資源改用 HTTPS 或相對路徑,第三方資源改用對方的 HTTPS 版本。
  • 舊網址太多、需要大量改寫時,可以用內容安全政策的 upgrade-insecure-requests 指令,讓瀏覽器把站內的 HTTP 網址當成 HTTPS 處理;資源若沒有 HTTPS 版本,請求會直接失敗,不會退回 HTTP。

WordPress 網站的網址設定與舊網址替換,可參考WordPress SSL 設定與混合內容排查。

轉址與網域設定造成的警告

憑證沒問題,警告仍可能出在網址版本與轉址,特徵是從某個入口進站才出錯。

  • HTTP 沒有轉到 HTTPS:在伺服器層設定永久轉址,讓所有 HTTP 請求都導到對應的 HTTPS 網址。
  • 網址版本沒有都涵蓋:有 www 與沒有 www、各個子網域,都要包含在憑證的網域名稱裡。
  • 舊網域與停用網域:訪客以 HTTPS 開啟舊網域時,要先完成加密連線的交握才會送出請求、收到轉址回應,舊網域沒有有效憑證,訪客在轉址前就會看到警告。
  • HSTS 設定:Strict-Transport-Security 標頭會讓瀏覽器之後只用 HTTPS 連線這個主機;依 MDN 說明,連線到已啟用 HSTS 的主機時若發生憑證錯誤,瀏覽器不會提供繼續瀏覽的選項。啟用前,尤其要加上涵蓋子網域的參數前,先確認所有子網域都有有效憑證。

只有部分訪客看到警告時怎麼查

自己測試正常、客戶卻反映看到警告時,先請對方提供包含網址列與錯誤代碼的截圖,再依序判斷:

  • 裝置時間:錯誤是日期無效、伺服器憑證效期卻正常時,請對方確認裝置的日期與時間。
  • 防毒軟體與公司網路:Chrome 說明中心提到,防毒軟體的 HTTPS 防護或 HTTPS 掃描功能、公司 Proxy 的 HTTPS 攔截,都可能造成憑證錯誤。
  • 公共無線網路:需要登入的公共 Wi-Fi,請對方完成網路登入後再重試。
  • 開啟的網址版本:對方可能是從舊書籤、舊名片上的網址進站,剛好是沒有涵蓋到的版本。
  • 伺服器節點:使用 CDN 或多台主機時,若只有部分節點更新了憑證,不同地區的訪客會看到不同結果。

站長的排查順序清單

  1. 記錄完整網址、警告樣式、錯誤代碼、瀏覽器與裝置。
  2. 用無痕視窗與另一個網路重新開啟,排除個人裝置與擴充功能的影響。
  3. 檢視憑證的有效期間、涵蓋的網域名稱與簽發者。
  4. 測試 http、https 與有無 www 的四種網址組合,確認都導到同一個 HTTPS 網址。
  5. 在開發人員工具主控台找出混合內容,逐一修正資源網址。
  6. 檢查表單送出網址、嵌入的影片與地圖、廣告與追蹤程式碼是否都使用 HTTPS。
  7. 如果是紅色警告,到 Search Console 的安全性問題報告確認原因,處理方式可參考網站安全檢測的被駭跡象清單。
  8. 修正後清除網站與 CDN 快取,再用不同瀏覽器與裝置測試。

修好之後怎麼確認與預防

警告消失只代表當下測試正常。表單頁、會員頁與下載頁也要各開一次;再記下憑證到期日,確認主機的自動續期已啟用、續期後伺服器會載入新憑證。之後在更換主機、啟用或更換 CDN、新增子網域、換網域或改版上線時,都把憑證與轉址列入檢查,名片與 DM 上印的網址版本也要被涵蓋。網站曾被標示為不安全的,修正後也要確認安全性問題報告已沒有待處理項目。

常見問題

網站有裝 SSL 憑證,為什麼還是顯示不安全?

可能是訪客開的 HTTP 網址沒有轉到 HTTPS、開啟的網址版本不在憑證涵蓋範圍內,或頁面有混合內容。先確認訪客開啟的完整網址與錯誤代碼,再依警告樣式排查。

訪客看到「你的連線不是私人連線」可以直接繼續瀏覽嗎?

站長不應該請訪客略過警告。這個畫面代表憑證沒有通過驗證,正確做法是依錯誤代碼修正憑證或網址設定;網站若已啟用 HSTS,瀏覽器也不會提供略過的選項。

只有自己的電腦顯示不安全,要怎麼判斷?

換用無痕視窗、另一個瀏覽器,再用手機行動網路開啟同一個網址。其他環境都正常時,先檢查自己裝置的日期時間、防毒軟體與網路設定;其他環境也出錯,就是網站端的問題。

憑證已經續期,為什麼還是顯示過期?

可能是伺服器沒有重新載入新憑證、憑證裝在錯誤的伺服器或層級,或 CDN 節點仍使用舊憑證。直接檢視瀏覽器取得的憑證效期,就能確認對外提供的是哪一張。

此網站不安全的紅色警告要怎麼解除?

先在 Search Console 的安全性問題報告查看被標示的問題與網址,為所有網頁修正報告列出的所有問題後,在報告中選取要求審查並說明修正方式。審查可能需要幾天到幾週。

本文由京采數位科技整理。我們自 2005 年起提供官網設計、系統開發與 Google SEO 服務,實際案例可見成果與案例。

想直接討論你自己的網站狀況,或需要一份初步的搜尋機會評估?

相關主題

下一步

如果網站已經出現不安全警告,建議先依上面的清單記下網址版本與錯誤代碼,再決定要調整的是憑證、轉址還是頁面資源。京采的技術 SEO 與網站健檢服務可以協助檢查憑證涵蓋範圍、轉址規則與混合內容,並整理主機與網域 DNS 的設定問題。歡迎與我們聯繫,提供網址與截圖,我們會協助判斷問題出在哪一層。