Ich bin auch auf dieses Problem gestoßen. Ich habe diesen Thread gelesen und die meisten Antworten sind informativ, aber für mich zu komplex. Ich habe keine Erfahrung mit Networking-Themen, daher ist diese Antwort für Leute wie mich.
In meinem Fall trat dieser Fehler auf, weil ich die Zwischen- und Stammzertifikate nicht neben dem Zertifikat, das ich in meiner Anwendung verwendet habe, angegeben habe.
Folgendes habe ich vom Anbieter des SSL-Zertifikats erhalten:
- abc.crt
- abc.pem
- abc-bunde.crt
In der abc.crt
Datei gab es nur ein Zertifikat:
-----BEGIN CERTIFICATE-----
/*certificate content here*/
-----END CERTIFICATE-----
Wenn ich es in diesem Format bereitstellen würde, würde der Browser keine Fehler anzeigen (Firefox), aber ich würde eine curl: (60) SSL certificate : unable to get local issuer certificate
Fehlermeldung erhalten, wenn ich die Curl-Anfrage mache.
Überprüfen Sie Ihre abc-bunde.crt
Datei, um diesen Fehler zu beheben . Sie werden höchstwahrscheinlich so etwas sehen:
-----BEGIN CERTIFICATE-----
/*additional certificate content here*/
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
/*other certificate content here*/
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
/*different certificate content here*/
-----END CERTIFICATE-----
Dies sind Ihre Zwischen- und Stammzertifikate. Ein Fehler tritt auf, weil sie in dem SSL-Zertifikat fehlen, das Sie Ihrer Anwendung zur Verfügung stellen.
Kombinieren Sie den Inhalt dieser beiden Dateien in diesem Format, um den Fehler zu beheben:
-----BEGIN CERTIFICATE-----
/*certificate content here*/
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
/*additional certificate content here*/
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
/*other certificate content here*/
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
/*different certificate content here*/
-----END CERTIFICATE-----
Beachten Sie, dass zwischen den Zertifikaten am Ende oder am Anfang der Datei keine Leerzeichen stehen. Sobald Sie dieses kombinierte Zertifikat Ihrer Anwendung zur Verfügung gestellt haben, sollte Ihr Problem behoben sein.