使用 HTTPS 確保網站安全無虞

保護您的網站和使用者

什麼是 HTTPS?

HTTPS (超文字安全傳輸通訊協定) 是一種網際網路通訊協定,可確保資料在使用者的電腦和網站之間傳輸時,保有完整性和機密性。使用者造訪任何網站時,都希望能享有安全而私密的線上體驗。因此,無論網站的內容為何,我們都建議您採用 HTTPS 來確保網站使用者的連線安全性。

透過 HTTPS 傳送的資料非常安全,因為 HTTPS 會透過「傳輸層安全性」通訊協定 (TLS) 提供以下三道重要的資安防護網:

  1. 加密:對交換的資料進行加密,防止資料遭到竊取。也就是說,當使用者在瀏覽網站時,任何人都無法「竊聽」其對話、追蹤他們在多個網頁之間轉換的活動,或竊取其資訊。
  2. 資料完整性:系統會偵測出資料在傳輸過程中是否遭到有意或無意的修改或破壞。
  3. 驗證:驗證您的使用者是否與預期的網站進行通訊。這能預防攔截式攻擊並建立使用者的信任感,進而促進其他商業利益。

實作 HTTPS 的最佳做法

使用可靠的安全性憑證

在您為網站啟用 HTTPS 時,必須取得安全性憑證。此憑證是由憑證授權單位 (CA) 所核發,會透過幾個步驟來驗證您的網址確實是貴機構所有,藉此保護客戶免於遭受攔截式攻擊。設定憑證時請務必選擇 2048 位元金鑰,以確保較高等級的安全性。如果您原有的憑證使用安全性較弱的金鑰 (1024 位元),請將金鑰升級至 2048 位元。選擇網站憑證時,請注意下列事項:

  • 向可提供技術支援的可靠 CA 取得憑證。
  • 決定您需要的憑證種類:
    • 單一安全來源適用的單一憑證 (例如 www.example.com)。
    • 多個知名安全來源適用的多重網域憑證 (例如 www.example.com、cdn.example.com、example.co.uk)。
    • 擁有多個動態子網域的安全來源適用的萬用字元憑證 (例如 a.example.com、b.example.com)。

使用伺服器端 301 重新導向

透過伺服器端 301 HTTP 重新導向將您的使用者和搜尋引擎重新導向至 HTTPS 網頁或資源。

確認 Google 能夠檢索您的 HTTPS 網頁並建立索引

  • 請勿使用 robots.txt 檔案禁止搜尋引擎檢索您的 HTTPS 網頁。
  • 請勿在您的 HTTPS 網頁中加入 noindex 中繼標記。
  • 您可以使用 Google 模擬器測試 Googlebot 是否能存取您的網頁。

支援 HSTS

建議您讓 HTTPS 網站支援 HSTS (HTTP 嚴格傳輸安全性)。HSTS 會讓瀏覽器自動要求 HTTPS 網頁,即使使用者在瀏覽器網址列中輸入 http 亦然。此外,它也會指示 Google 在搜尋結果中提供安全網址。這些措施可以儘可能降低使用者接觸到不安全內容的風險。

如要支援 HSTS,請使用支援 HSTS 的網路伺服器,並啟用這項功能。

雖然 HSTS 的安全性較高,但也會讓復原策略變得更為複雜,因此建議您採用下列方法啟用 HSTS:

  1. 先推出 HTTPS 網頁,再啟用 HSTS。
  2. 開始傳送含有簡短 max-age 的 HSTS 標頭。監控來自使用者和其他用戶端的流量,以及其他相關內容的成效 (例如廣告)。
  3. 慢慢增加 HSTS max-age 長度。
  4. 如果 HSTS 不會對您的使用者和搜尋引擎產生負面影響,您就可以視需求讓網站加入各大瀏覽器的 HSTS 預載清單中。

考慮使用 HSTS 預先載入機制

如果您啟用了 HSTS,可以選擇是否要支援 HSTS 預先載入機制來提高安全性和效能。如要啟用預先載入機制,則必須前往 hstspreload.org 並依照規定提交您的網站

避免常見錯誤

在透過 TLS 加強網站安全性的過程中,請避免下列錯誤:

問題 因應做法
憑證過期 確保您的憑證一律處於最新狀態。
憑證的註冊網站名稱錯誤 確認您已為放置網站的所有主機名稱取得憑證。舉例來說,如果您的憑證只適用於 www.example.com,當使用者透過 example.com (不含「www.」前置字串) 載入您的網站時,就會發生憑證名稱不符的錯誤,因而無法存取網站。
缺少伺服器名稱指示 (SNI) 支援 確認您的網路伺服器支援 SNI,而且您的使用者普遍使用支援的瀏覽器。所有新型瀏覽器均支援 SNI,但如果您必須支援舊型瀏覽器,則需要一組專屬 IP。
檢索問題 請勿使用 robots.txt 禁止搜尋引擎檢索您的 HTTPS 網站。
索引問題 儘可能允許搜尋引擎為您的網頁建立索引。請避免使用 noindex 中繼標記。
通訊協定版本過舊 過舊的通訊協定版本會有安全性漏洞,請確實使用最新版的 TLS 程式庫,並實作最新的通訊協定版本。
混合式安全性元素 HTTPS 網頁上只能嵌入 HTTPS 內容。
HTTP 和 HTTPS 網站上的內容不同 請確保您 HTTP 網站和 HTTPS 網站上的內容一致。
HTTPS 的 HTTP 狀態碼錯誤 檢查您的網站是否傳回正確的 HTTP 狀態碼。例如,200 OK 代表可存取的網頁,404410 則代表網頁不存在。

其他提示

如要進一步瞭解如何在網站上使用 HTTPS 網頁,請參閱 HTTPS 遷移常見問題

從 HTTP 遷移至 HTTPS

如果將網站從 HTTP 遷移至 HTTPS,Google 會視為變更網址的網站遷移作業,並可能對您的流量帶來暫時性影響。詳情請參閱網站遷移概要網頁的說明。

請將 HTTPS 資源新增到 Search Console。Search Console 會分別處理 HTTP 和 HTTPS;上述資源的資料在 Search Console 中並不會共用。因此,如果您有分屬於這兩種通訊協定的網頁,必須分別建立不同的 Search Console 資源。

更多資訊

進一步瞭解如何在網站上實作 TLS:

這篇文章實用嗎?
我們應如何改進呢?