WORDPRESS: cURL-Fehler 60: SSL-Zertifikat

Lesezeit: 4 Minuten

Benutzer-Avatar
Nathan30

Ich baue gerade eine WordPress-Installation unter einem Debian-Server. Ich installiere PHP7, Curl und Apache2

Während ich versuche, eine neue Erweiterung zu installieren, erhalte ich diese Fehlermeldung:

cURL error 60: SSL certificate problem: self signed certificate in certificate chain

Ich versuche, die php.ini damit zu ändern, nachdem ich einige Beiträge gelesen habe, die ein ähnliches Problem behandeln:

curl.cainfo = /etc/php7.0/cacert.pem

Aber ich stehe immer noch vor dem Problem, auch wenn Apache neu gestartet wird.

Irgendwelche Ideen ?

Danke im Voraus

  • Dateipfad prüfen /etc/php7.0/cacert.pem wo es sich befindet

    – Pankaj Makwana

    19. Juni 2017 um 14:04 Uhr

  • Mögliches Duplikat von Curl-Fehler 60, SSL-Zertifikatsfehler: selbstsigniertes Zertifikat in Zertifikatskette

    – modfabio

    19. Juni 2017 um 14:08 Uhr

  • Ich überprüfe den Dateipfad und es ist gut :/

    – Nathan30

    19. Juni 2017 um 14:10 Uhr

Setzen Sie „sslverify“ auf „false“, um den cURL-Fehler 60 zu beheben: SSL-Zertifikat in WordPress wp_remote_get-Anfrage.

wp_remote_get($url, array('sslverify' => FALSE));

  • Wo kann man das hinzufügen?

    – Manik Arora

    24. Dezember 2020 um 7:10 Uhr

  • Sehr schöne Lösung! es hat mir das problem gelöst! Brillant!

    – David

    22. April 2021 um 7:07 Uhr

Deaktivieren Sie die SSL-Überprüfung auf Ihrer Testseite.

Sie können dies tun, indem Sie diese Zeile in die Datei einfügen

Aussehen > Theme-Editor > functions.php oder

/wp-content/themes/YOUR_THEME/functions.php:

add_filter('https_ssl_verify', '__return_false');

Fügen Sie dies nur auf einer Testseite hinzu, niemals auf einer Live-Seite.

WordPress verwendet ein eigenes CA-Bundle, das sich in WP/wp-includes/certificates.

Das CA-Bundle, das bis vor kurzem mit WordPress ausgeliefert wurde, war veraltet, wie in dieser Ausgabe besprochen: https://core.trac.wordpress.org/ticket/45807.

Einstellung sslverify zu false wird nicht empfohlen, und Sie können stattdessen eine aktualisierte Version des Pakets herunterladen, https://github.com/WordPress/WordPress/tree/master/wp-includes/certificates und ersetzen Sie es im WordPress-Ordner.

  • Das CA-Bundle aus dem von Ihnen angegebenen Github-Link hat bei mir nicht funktioniert (lokalen Apache neu gestartet und alles). Nur Einstellungen ‘sslverify’ => FALSE haben …

    – Styledev

    24. Oktober 2020 um 21:25 Uhr

Aufgrund meiner jüngsten Erfahrung glaube ich, dass die Botschaft “selbstsigniertes Zertifikat in der Zertifikatskette” sagt Ihnen das Problem genau – nämlich, dass jede SSL-Site, auf die Sie zugreifen möchten, ein Zertifikat in der Kette hat, das nicht in dem Bündel ist, auf das verwiesen wird cacert.pem.

Dies ist sinnvoll, da der Fehler meldet, dass es sich um a handelt selbst signiert Zertifikat.. dh es wäre niemals in der heruntergeladenen Datei cacert.pem enthalten.

Meine Lösung war, eine zu bekommen Base64 verschlüsselte Datei, die die Zertifikatskette der Site enthält, auf die ich zuzugreifen versuche.

    How to: Use a browser to access the site you are trying to access, click the 
    certificate part of the address (usually to the left of the address box with 
    a lock icon) and the click on whatever your interface supports to see the 
    list of certificates in the chain.  Manually export those certificates to a 
    text file.

Hängen Sie diese Textdatei dann mit einem Texteditor an die Liste der Zertifikate (cacert.pem) an, die PHP für CURL-Aktionen verwendet.


Du erwähnst WordPress.. WordPress v4.9.6 hat ein Bündel von Zertifikaten, auf die es speziell verweist, wenn es Plugins unter ./ aktualisiert oder installiert.WordPress-Instanz\wp-enthält\Zertifikate. Meine Notlösung bestand darin, die obige Textdatei (mit der lokalen selbstsignierten Zertifikatskette) an die Datei anzuhängen ca-bundle.crt Datei, die Sie an diesem Ort finden.

Eine Einschränkung: Wenn Sie WordPress aktualisieren, wird es die ca-bundle.crt Datei, also müssen Sie sie erneut hinzufügen – es sei denn, jemand hat eine bessere Lösung …?

Benutzer-Avatar
Fery W

Falls jemand bei seiner WordPress-Installation auf dem lokalen Computer auf dasselbe Problem stößt, indem er hinzufügt http_request_args Filter hat es bei mir geschafft

<?php
/**
 * Plugin Name: Local Dev CaFile
 * Plugin URI: https://stackoverflow.com/q/44632619/881743
 * Description: Another solution for `SSL certificate problem: self signed certificate in certificate chain apache` error for your local development
 * Version: 1.0
 * Author: John Doe
 * Author URI: https://stackoverflow.com/
 * License: WTFPL
 */

add_filter( 'http_request_args', function ( $args ) {
    if ( getenv('WP_ENV') !== 'development' ) {
        return $args;
    } 

    $args['sslcertificates'] = ini_get( 'curl.cainfo' ) ?? $args['sslcertificates'];

    return $args;
}, 0, 1 );

und speichere es ein path/to/wp-content/plugins/dev-plugin.php und aktivieren Sie das Plugin von wp-admin, oder Sie können es optional in Ihre einfügen WPMU_PLUGIN_DIR.

Hoffe das hilft Prost

Benutzer-Avatar
Ganesh

Laden Sie diese Datei herunter http://curl.haxx.se/ca/cacert.pem

Verwenden Sie den Speicherort Ihrer Datei in
openssl.cafile=c:/cacert.pem

Bezug – https://github.com/auth0/auth0-PHP#i-am-getting-curl-error-60-ssl-certificate-problem-self-signed-certificate-in-certificate-chain-on-windows

Benutzer-Avatar
wosykapavel

Upgrade von wp-cli 2.4 => 2.5 hat mir geholfen. (mit der Installation dieser https://github.com/wp-cli/profile-command )

1384940cookie-checkWORDPRESS: cURL-Fehler 60: SSL-Zertifikat

This website is using cookies to improve the user-friendliness. You agree by using the website further.

Privacy policy