CSR.pluscsr.plus
← 返回文章
故障排除2026-08-15•4 分鐘閱讀

憑證鏈不完整:缺少中級憑證的修復方法

· CSR.plus 團隊

憑證鏈不完整:缺少中級憑證的修復方法
  • •鏈錯誤幾乎總是意味著伺服器只傳送葉子憑證,而沒有傳送瀏覽器驗證所需的中級憑證。
  • •修復方法是單一拼接檔案:葉子 + 中級,順序正確。
  • •用與訪客相同的 openssl 指令驗證修復結果。
鏈錯誤
症狀
只在部分用戶端出現
缺少檔案
根本原因
未傳送中級憑證
約 5 分鐘
修復時間
取得鏈之後
openssl
驗證方式
s_client + 憑證鏈

鏈為什麼會斷裂

瀏覽器信任憑證是因為信任其根憑證。您的葉子憑證由不在瀏覽器信任庫中的中級憑證簽名,因此伺服器必須在握手中傳送它。如果伺服器設定只指向葉子憑證,或拼接檔案順序錯誤,不快取中級憑證的用戶端就會回報「鏈不完整」、「unable to get local issuer certificate」或 NET::ERR_CERT_AUTHORITY_INVALID。

在 Nginx 與 Apache 上如何修復

從您的 CA(或憑證 Authority Information Access 延伸中的中級端點)下載完整鏈包。拼接:cat yourdomain.com.crt intermediate.crt root.crt > fullchain.crt——葉子在前,中級依序,根在最後。Nginx 將 ssl_certificate 指向 fullchain 檔案;Apache 設定 SSLCertificateChainFile(或把鏈包含進 SSLCertificateFile)。然後重新載入。

驗證修復結果

執行 openssl s_client -connect yourdomain.com:443 -servername yourdomain.com -showcerts 2>&1 | grep -A1 "Certificate chain"。您應該看到葉子憑證後跟中級憑證。openssl verify -CAfile root.pem fullchain.crt 應輸出 "fullchain.crt: OK"。再用乾淨的瀏覽器設定檔與外部鏈檢查工具複測。

FAQ

為什麼有的瀏覽器能存取、有的不能?

近期從 CT 日誌或快取取得中級憑證的用戶端可以不依賴它完成驗證;其他用戶端則不行。修復方法相同:傳送完整鏈。

CDN 會掩蓋這個問題嗎?

不會——CDN 用自己的憑證終止 TLS。如果您只上傳葉子憑證到 CDN,它會把同樣的斷鏈轉送給訪客。

UptimeRobot

免費監控你的 SSL 與在線狀態

UptimeRobot 全天候監視你的憑證與端點——免費方案含 50 個監控。

免費試用 UptimeRobot

聯盟連結——你無需多付任何費用,我們可能獲得佣金。

免費 SSL/TLS 工具

數秒內驗證並檢查你的憑證。

相關文章