PHPMailer 中SSL 憑證驗證失敗問題排查
PHPMailer 使用者在使用self 從伺服器發送電子郵件時可能會遇到「SSL3_ICATE:證書驗證失敗”錯誤- 簽署的證書。此問題是由於 PHP 5.6 中引入的 SSL 憑證驗證而引起的。
根本原因:
預設情況下,PHPMailer 會驗證 SSL 憑證以確保其真實性。當遇到自簽名憑證時,由於缺少適當的 CA(憑證授權單位),驗證失敗。
解決方案:
要解決這個問題,您有兩個選擇:
1。修正 SSL 設定:
如果可能,取得由受信任的 CA 簽署的有效 SSL 憑證並將其正確安裝在您的郵件伺服器上。這將確保成功的證書驗證。
2.停用 SSL 憑證驗證(不建議):
警告:停用憑證驗證會產生嚴重的安全隱患。它使您面臨中間人攻擊的風險。
要停用憑證驗證,請設定以下 PHPMailer 選項:
<code class="php">$mail->SMTPOptions = array( 'ssl' => array( 'verify_peer' => false, 'verify_peer_name' => false, 'allow_self_signed' => true ) );</code>
編輯 PHPMailer 庫以停用驗證是強烈建議不要這樣做,因為它會在升級時中斷。
安全注意事項:
停用 SSL 憑證驗證只能被視為臨時解決方法,而不是長期解決方案。保護您的 SSL 配置以防止潛在的安全漏洞至關重要。
以上是如何修復 PHPMailer 中的「SSL3_GET_SERVER_CERTIFICATE:憑證驗證失敗」錯誤?的詳細內容。更多資訊請關注PHP中文網其他相關文章!