Heim >Backend-Entwicklung >PHP-Tutorial >Wie behebt man den Fehler „SSL-Vorgang mit Code 1 fehlgeschlagen' in PHPs „file_get_contents()'?
Fehlerbehebung bei file_get_contents() SSL-Zertifikatsüberprüfungsfehler
Beim Versuch, mit file_get_contents() in PHP 5.6 auf einen REST-Dienst zuzugreifen, kann es zu folgendem Problem kommen: der Fehler „SSL-Vorgang mit Code 1 fehlgeschlagen“ aufgrund eines strengeren Zertifikats Überprüfung.
Problembeschreibung
Die PHP-Seite des Benutzers versucht, mithilfe von file_get_contents() Daten von einem HTTPS-Endpunkt abzurufen. Es schlägt jedoch mit den folgenden Fehlern fehl:
Root Ursache
PHP 5.6 führte standardmäßig eine strengere SSL-Überprüfung ein, die eine genaue Zertifikatsvalidierung erfordert. Der Fehler weist darauf hin, dass der Client das Zertifikat des Remote-Servers nicht überprüfen kann.
Lösung
Um dieses Problem zu beheben, empfiehlt ein offizielles PHP-Dokument zu OpenSSL-Änderungen in 5.6, die Zertifikatsüberprüfung zu deaktivieren. Hinweis: Diese Lösung hat erhebliche Auswirkungen auf die Sicherheit und sollte nur in kontrollierten Umgebungen in Betracht gezogen werden, in denen Vertrauen zwischen Client und Server besteht.
$arrContextOptions = array( "ssl" => array( "verify_peer" => false, "verify_peer_name" => false, ), ); $response = file_get_contents("remote_url", false, stream_context_create($arrContextOptions));
Wichtiger Hinweis
Das Deaktivieren der SSL-Zertifikatsüberprüfung verringert die Sicherheit und kann Setzen Sie Ihre Anwendung Lauschangriffen und anderen Sicherheitsverletzungen aus. Es wird dringend empfohlen, Ihr System korrekt zu konfigurieren, um vertrauenswürdige SSL-Zertifikate zu verwenden, anstatt auf diese Problemumgehung zurückzugreifen.
Das obige ist der detaillierte Inhalt vonWie behebt man den Fehler „SSL-Vorgang mit Code 1 fehlgeschlagen' in PHPs „file_get_contents()'?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!