Ankerlink an den Anfang der Seite
rotschnabelhokko 5179004 1920
Generic filters
Filter by Kategorien

Der Beitrag, geschriebem am 15. Oktober 2020, ist schon etwas älter und könnte womöglich nicht mehr aktuell sein

Für die Entwicklung und erste Tests nutze ich seit jeher den in Windows integrierten Webserver (IIS), den man im Windows-Setup nachinstallieren kann. Doch mit der Installation von Multilingualpress um eine Kundenwebsite weiter zu entwickeln, trat folgender Fehler auf.

Fatal error: Uncaught GuzzleHttp\Exception\RequestException: cURL error 60: SSL certificate problem: unable to get local issuer certificate (see https://curl.haxx.se/libcurl/c/libcurl-errors.html) in …\wp-content\plugins\multilingualpress\vendor\guzzlehttp\guzzle\src\Handler\CurlFactory.php:201 Stack trace: #0 …\wp-content\plugins\multilingualpress\vendor\guzzlehttp\guzzle\src\Handler\CurlFactory.php(155): GuzzleHttp\Handler\CurlFactory::createRejection() #1 …\mlstest\wp-content\plugins\multilingualpress\vendor\guzzlehttp\guzzle\src\Handler\CurlFactory.php(105): GuzzleHttp\Handler\CurlFactory::finishError() #2 …\mlstest\wp-content\plugins\multilingualpress\vendor\guzzlehttp\guzzle\src\Handler\CurlHandler.php(43): GuzzleHttp\Handler\CurlFactory::finish() #3 …\wp-content\plugins\multilingualpress\vendor\guzzlehttp\guzzle\src\Handler\Proxy.php(28): GuzzleHttp\Handler\CurlHandler->__invoke() #4 …in …\wp-content\plugins\multilingualpress\vendor\mjelamanov\psr18-guzzle\src\Client.php on line 50

In der Wirkbetriebsumgebung (Linux, Apache) lief hingegen alles bestens, da die Curl-Bibliotheken über die Paketmanager gebündelt werden und die aktuellen Curl-Bibliotheken mit dem neuesten CA-Root-Zertifikatspaket von Mozilla.org geliefert werden.

Das bedeutet, dass man einfach den CURLOPT_SSL_VERIFYPEER einschaltet und keine Fehler erhalten wird.Bei einer PHP-Installation die diese Datei nicht enthält, wie die Windows-PHP-Distribution, muss das CA-Root-Zertifikatspaket manuell herunterladen und PHP mitgeteilt werden, wo es zu finden ist. Auf der curl-Website steht das neueste CA-Root-Zertifikatspaket bereit.

https://curl.se/docs/caextract.html

screenshot 2021 10 15 091233

Die Datei herunterladen, und im PHP-Verzeichnis speichern (das geht vermutlich erst hinterher, da es dafür Admin-Rechte braucht).

Anschließend die php.ini-Datei bearbeiten und curl mitteilen, wo die .pem-Datei gespeichert ist. In meiner Testumgebung habe ich mehrere PHP-Versionen unter C:\Program Files\PHP also habe ich die Datei in diesem Ordner abgelegt und diese Zeile zu jeder php.ini-Datei hinzugefügt:

curl.cainfo=c:\Program Files\php\cacert.pem

Eventuell muss der Webserver neu gestartet werden. Bei mir war der Fehler umgehend nach dem Speichern der php.ini Datei zur entsprechenden PHP-Version verschwunden.

Bitte das Kommentarfeld nicht für Supportanfragen nutzen; hier kann kein Support angeboten werden. Die Angabe von Name oder E-Mail-Adresse ist optional, ein Spitzname wäre trotzdem nett.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Hinweis: Name und E-Mail-Adresse (beides optional, da alle Kommentare moderiert werden) werden dauerhaft gespeichert. Über dieses Formular kann jeder Zeit die Löschung persönlicher Daten oder Kommentare angefordert werden; die Anfrage wird nicht veröffentlicht und nach der Bearbeitung gelöscht. IP-Adressen, die mit Kommentaren gespeichert werden, werden nach zwei Monaten automatisch gelöscht.

Ihre Nachricht wird möglicherweise zur Spam-Prüfung an OpenAI (USA) weitergeleitet. Weitere Informationen finden Sie in unserer Datenschutzerklärung.