Heim >Backend-Entwicklung >PHP-Tutorial >Wie behebe ich den Fehler „SSL3_GET_SERVER_CERTIFICATE: Zertifikatsüberprüfung fehlgeschlagen' in PHP?

Wie behebe ich den Fehler „SSL3_GET_SERVER_CERTIFICATE: Zertifikatsüberprüfung fehlgeschlagen' in PHP?

DDD
DDDOriginal
2025-01-01 04:38:09991Durchsuche

How to Resolve the

Behebung des Fehlers „SSL3_GET_SERVER_CERTIFICATE: Zertifikatsüberprüfung fehlgeschlagen“ für HTTPS-Anfragen

Im Bereich der Webentwicklung ist die Verwendung von HTTPS für sichere Kommunikation von größter Bedeutung. Gelegentlich können jedoch bei HTTPS-Anfragen Fehler auftreten, wie zum Beispiel das berüchtigte „SSL3_GET_SERVER_CERTIFICATE: Zertifikatsüberprüfung fehlgeschlagen, CA ist in Ordnung.“

Navigation durch den Fehler

Wenn dies der Fall ist Wenn ein Fehler auftritt, weist er in der Regel auf eine Diskrepanz zwischen dem erwarteten Serverzertifikat und dem vom Server vorgelegten Zertifikat hin. Obwohl die CA (Zertifizierungsstelle) als gültig erachtet wird, bestehen weiterhin Probleme mit der Zertifikatsvalidierung.

Lösung über PHP-Konfiguration

Für PHP-Anwendungen gibt es eine einfache Lösung für diesen Fehler beim Konfigurieren der Einstellung „curl.cainfo“ in php.ini. Diese Einstellung gibt den Pfad zu einer Datei an, die vertrauenswürdige Stammzertifikate enthält. Standardmäßig verwendet PHP seine eigenen gebündelten Zertifikate, die möglicherweise nicht regelmäßig aktualisiert werden.

So beheben Sie den Fehler:

  1. Laden Sie das ca-certificates-Bundle von https://curl herunter. se/ca/cacert.pem.
  2. Speichern Sie die heruntergeladene Datei an einem gewünschten Ort, z. B. /path/to/cacert.pem.
  3. Öffnen Sie /etc/php.ini, suchen Sie den Abschnitt [curl] und fügen Sie die folgende Zeile hinzu:
curl.cainfo = /path/to/cacert.pem
  1. Speichern und starten Sie den PHP-FPM-Dienst neu.

Einzelne Anfrage Anpassungen

Wenn PHP-Konfigurationsanpassungen nicht möglich sind, können bestimmte cURL-Anfragen für die Verwendung des benutzerdefinierten CA-Zertifikats konfiguriert werden, indem die Option CURLOPT_CAINFO festgelegt wird:

curl_setopt($ch, CURLOPT_CAINFO, '/path/to/cacert.pem');

Zusätzliche Überlegungen

Stellen Sie sicher, dass das vom HTTPS-Endpunkt vorgelegte Serverzertifikat gültig und von einer vertrauenswürdigen Zertifizierungsstelle signiert ist. Wenn das Problem weiterhin besteht, sollten Sie die Firewall-Einstellungen überprüfen oder serverseitige Zertifikate überprüfen.

Fazit

Durch Befolgen dieser Schritte können Sie das Problem „SSL3_GET_SERVER_CERTIFICATE: Zertifikatsüberprüfung“ effektiv beheben Fehler „fehlgeschlagen, CA ist in Ordnung“ und stellen Sie eine reibungslose HTTPS-Kommunikation in Ihren PHP-Anwendungen sicher.

Das obige ist der detaillierte Inhalt vonWie behebe ich den Fehler „SSL3_GET_SERVER_CERTIFICATE: Zertifikatsüberprüfung fehlgeschlagen' in PHP?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn