Heim >Backend-Entwicklung >PHP-Tutorial >Wie behebe ich den Fehler „SSL3_GET_SERVER_CERTIFICATE: Zertifikatsüberprüfung fehlgeschlagen' in PHPMailer?
Fehlerbehebung bei SSL-Zertifikatsüberprüfungsfehlern in PHPMailer
PHPMailer-Benutzer können beim Senden von E-Mails von Servern mit self auf die Fehlermeldung „SSL3_GET_SERVER_CERTIFICATE: Zertifikatsüberprüfung fehlgeschlagen“ stoßen -signierte Zertifikate. Dieses Problem tritt aufgrund der in PHP 5.6 eingeführten SSL-Zertifikatsüberprüfung auf.
Ursache:
Standardmäßig überprüft PHPMailer SSL-Zertifikate, um ihre Authentizität sicherzustellen. Wenn ein selbstsigniertes Zertifikat gefunden wird, schlägt die Überprüfung aufgrund des Fehlens einer geeigneten CA (Zertifizierungsstelle) fehl.
Lösung:
Um dieses Problem zu beheben, Sie haben zwei Möglichkeiten:
1. Korrigieren Sie die SSL-Konfiguration:
Wenn möglich, besorgen Sie sich ein gültiges SSL-Zertifikat, das von einer vertrauenswürdigen Zertifizierungsstelle signiert ist, und installieren Sie es korrekt auf Ihrem Mailserver. Dadurch wird eine erfolgreiche Zertifikatsüberprüfung sichergestellt.
2. SSL-Zertifikatsüberprüfung deaktivieren (nicht empfohlen):
Warnung: Das Deaktivieren der Zertifikatsüberprüfung hat schwerwiegende Auswirkungen auf die Sicherheit. Dadurch sind Sie dem Risiko von Man-in-the-Middle-Angriffen ausgesetzt.
Um die Zertifikatsüberprüfung zu deaktivieren, legen Sie die folgenden PHPMailer-Optionen fest:
<code class="php">$mail->SMTPOptions = array( 'ssl' => array( 'verify_peer' => false, 'verify_peer_name' => false, 'allow_self_signed' => true ) );</code>
Bearbeiten Sie die PHPMailer-Bibliothek, um die Überprüfung zu deaktivieren Davon wird dringend abgeraten, da es bei Upgrades kaputt geht.
Sicherheitsüberlegungen:
Das Deaktivieren der SSL-Zertifikatsüberprüfung sollte nur als vorübergehende Problemumgehung und nicht als langfristige Lösung betrachtet werden. Es ist wichtig, Ihre SSL-Konfiguration zu sichern, um mögliche Sicherheitsverletzungen zu verhindern.
Das obige ist der detaillierte Inhalt vonWie behebe ich den Fehler „SSL3_GET_SERVER_CERTIFICATE: Zertifikatsüberprüfung fehlgeschlagen' in PHPMailer?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!