Fehlerbehebung
So beheben Sie den SSL-Zertifikatsfehler cURL 60 in WordPress
Wenn Sie WordPress aktualisieren, ein Plugin installieren oder eine Verbindung zu einem externen Dienst herstellen, kann eine Meldung wie diese erscheinen:
Error en la actualización: Descarga fallida. cURL error 60: SSL certificate problem
Der Fehler bedeutet, dass PHP oder cURL die Vertrauenskette des Zertifikats, das der entfernte Server vorlegt, nicht prüfen konnte. Er bedeutet nicht unbedingt, dass das Zertifikat Ihrer eigenen Website abgelaufen ist.
Mögliche Ursachen, die Sie prüfen sollten
Die Meldung passt zu mehreren Szenarien, erlaubt aber ohne weitere Tests nicht, sich für eines zu entscheiden:
- Eine alte WordPress-Version mit einem veralteten Paket von Zertifizierungsstellen.
- Der Zertifikatsspeicher des Betriebssystems oder von PHP ist veraltet oder falsch konfiguriert.
- Datum und Uhrzeit des Servers stimmen nicht.
- Das Zertifikat des entfernten Servers ist abgelaufen, passt nicht zu seiner Domain oder liefert die Zwischenzertifikatskette nicht vollständig aus.
- Ein Proxy, Virenscanner, eine Firewall oder ein Sicherheits-Plugin fängt die HTTPS-Verbindung ab.
Deaktivieren Sie die SSL-Prüfung nicht
Verwenden Sie keine Filter, die https_ssl_verify auf false setzen.
Wenn Sie die Prüfung deaktivieren, akzeptiert WordPress nicht vertrauenswürdige Zertifikate, was Man-in-the-Middle-Angriffe erleichtert. Außerdem verdeckt es die eigentliche Ursache und kann andere Verbindungen über die HTTP-API von WordPress betreffen, wenn der Filter allgemein greift.
1. Prüfen Sie das Datum und die fehlerhafte URL
Lesen Sie die vollständige Meldung, um die entfernte Domain zu ermitteln. Tritt der Fehler beim Aktualisieren von WordPress auf, geht die Verbindung normalerweise an api.wordpress.org oder downloads.wordpress.org. Tritt er nur bei einem bestimmten Plugin auf, kann er den externen Dienst dieses Plugins betreffen.
Prüfen Sie auch, ob Datum, Uhrzeit und Zeitzone des Servers stimmen. Eine deutliche Abweichung kann ein gültiges Zertifikat als abgelaufen oder noch nicht gültig erscheinen lassen.
2. Aktualisieren Sie WordPress, PHP und die Zertifikate
Bevor Sie die Konfiguration ändern:
- Erstellen Sie ein Backup.
- Aktualisieren Sie WordPress auf eine kompatible und gepflegte Version.
- Aktualisieren Sie die betroffenen Plugins und Themes.
- Prüfen Sie, ob Ihre PHP-Version noch Support erhält.
WordPress bringt ein eigenes Zertifikatspaket in wp-includes/certificates/ca-bundle.crt mit. Ersetzen Sie nicht nur diese Datei durch eine aus unbekannter Quelle heruntergeladene: Aktualisieren Sie den gesamten Core, damit alle Dateien zur selben Version gehören.
3. Prüfen Sie die Zertifikatskonfiguration von PHP
In den PHP-Informationen können Sie die Werte von curl.cainfo und openssl.cafile prüfen. Sind sie gesetzt, müssen sie auf eine vorhandene, lesbare und aktuelle Zertifikatsdatei zeigen.
Per SSH können Sie die Verbindung auch prüfen, ohne eine Validierung zu deaktivieren:
curl -Iv https://api.wordpress.org/
Testen Sie genau die URL aus der Fehlermeldung. Zeigt der Befehl denselben Fehler, prüfen Sie den Zertifikatsspeicher des Servers und die vom Ziel ausgelieferte Kette. Funktioniert er in der Konsole, schlägt aber in WordPress fehl, bedenken Sie, dass die Konsole einen anderen Speicher verwenden kann: Prüfen Sie die Konfiguration der PHP-Version, die die Website ausführt, und protokollieren Sie die Anfrage aus WordPress, bevor Sie sie einem Plugin zuschreiben.
4. Schließen Sie Störungen durch Plugins und Proxys aus
Nur wenn das Protokoll oder die Konfiguration auf ein mögliches Abfangen hindeuten, deaktivieren Sie vorübergehend und kontrolliert die Sicherheits- oder Proxy-Plugins, die ausgehende Anfragen verändern können. Wiederholen Sie dieselbe Anfrage vorher und nachher; das veränderte Ergebnis ist der brauchbare Beleg. Führen Sie diesen Test nicht in der Produktion ohne Backup und Wartungsfenster durch.
Wenn Sie einen Unternehmens-Proxy oder einen Virenscanner verwenden, der HTTPS untersucht, muss dessen Zertifizierungsstelle korrekt im von PHP verwendeten Speicher installiert sein.
5. Wenden Sie sich an den Anbieter, wenn der Server betroffen ist
Wenn Sie den Server nicht selbst verwalten, geben Sie dem Anbieter die entfernte URL, die vollständige Meldung, die Uhrzeit des Tests und die PHP-Version. Er kann das Zertifikatspaket, die Konfiguration von cURL/OpenSSL und ein mögliches Abfangen ausgehender Verbindungen prüfen.
Die richtige Lösung besteht darin, eine gültige Vertrauenskette wiederherzustellen. Die SSL-Prüfung zu deaktivieren, sollte nicht einmal als vorübergehende Lösung eingesetzt werden.
Wenn sich auch das Update nicht herunterladen lässt
Erzwingen Sie den Download nicht ohne gültiges TLS. Wenn Sie den Core manuell aktualisieren müssen, verwenden Sie die offizielle Distribution, sichern Sie zuerst eine Kopie und folgen Sie einem Update-Verfahren, das zur installierten Version passt. Eine Neuinstallation derselben Version und ein Update sind nicht dieselbe Operation.
Entfernen Sie Tokens und private Parameter, wenn Sie die fehlerhafte URL weitergeben. Ein erfolgreiches curl von Ihrem Computer prüft nicht den Zertifikatsspeicher des Hostings; führen Sie den Test in der Umgebung durch, in der der Fehler auftritt, und unterscheiden Sie immer zwischen CLI und Web-PHP.
Das könnte Ihnen auch helfen
- 404-Fehler bei statischen Dateien verlangsamen die Website Erkennen Sie fehlende statische Ressourcen, die PHP starten und CPU verbrauchen, liefern Sie sie als...
- Elementor 3.6.x, historische Kompatibilitätsprobleme Historische Anleitung zur Diagnose von Fehlern nach dem Update auf Elementor 3.6, ohne sie alle ders...
- Elementor zeigt beim Speichern einen Fehler 500 Ermitteln Sie die Anfrage und den PHP-Fehler von Elementor, bevor Sie Speicherlimits, Plugins oder S...
- Fehler beim WordPress-Update, „cURL operation timed out“ Ermitteln Sie URL und Phase einer abgelaufenen Anfrage, bevor Sie den cURL-Fehler 28 WordPress, eine...
Stimmt etwas nicht oder hat sich etwas geändert? Erzählen Sie es uns, und wir prüfen es.