Ich habe versucht, über eine PHP-Seite, die ich auf unserem Server erstellt habe, auf diesen bestimmten REST-Service zuzugreifen. Ich habe das Problem auf diese beiden Zeilen eingegrenzt. Meine PHP-Seite sieht also so aus:
<?php
$response = file_get_contents("https://maps.co.weber.ut.us/arcgis/rest/services/SDE_composite_locator/GeocodeServer/findAddressCandidates?Street=&SingleLine=3042+N+1050+W&outFields=*&outSR=102100&searchExtent=&f=json");
echo $response; ?>
Die Seite stirbt in Zeile 2 mit folgenden Fehlern:
- Warnung: file_get_contents (): SSL-Vorgang mit Code 1 fehlgeschlagen. OpenSSL-Fehlermeldungen: Fehler: 14090086: SSL-Routinen: SSL3_GET_SERVER_CERTIFICATE: Zertifikatüberprüfung in ... PHP in Zeile 2 fehlgeschlagen
- Warnung: file_get_contents (): Krypto in ... php in Zeile 2 konnte nicht aktiviert werden
- Warnung: file_get_contents (
https://maps.co.weber.ut.us/arcgis/rest/services/SDE_composite_locator/GeocodeServer/findAddressCandidates?Street=&SingleLine=3042+N+1050+W&outFields=*&outSR=102100&searchExtent=&f=json
): Stream konnte nicht geöffnet werden: Vorgang in ... php in Zeile 2 fehlgeschlagen
Wir verwenden einen Gentoo-Server. Wir haben kürzlich ein Upgrade auf PHP Version 5.6 durchgeführt. Es war nach dem Upgrade, als dieses Problem auftrat.
Ich habe festgestellt, wenn ich den REST-Service durch eine Adresse wie: https://www.google.com
Ersetze. Meine Seite funktioniert einwandfrei.
In einem früheren Versuch habe ich das festgelegt “verify_peer”=>false
und als Argument an file_get_contents übergeben, wie hier beschrieben: file_get_contents ignoriert verify_peer => false? Aber wie der Schriftsteller feststellte; es machte keinen Unterschied.
Ich habe einen unserer Serveradministratoren gefragt, ob diese Zeilen in unserer Datei php.ini vorhanden sind:
- extension = php_openssl.dll
- allow_url_fopen = Ein
Er sagte mir, dass openssl kompiliert wird, wenn wir bauen, da wir auf Gentoo sind. und es ist nicht in der Datei php.ini festgelegt.
Ich habe auch bestätigt, dass allow_url_fopen
das funktioniert. Aufgrund der Spezialität dieses Problems; Ich finde nicht viele Informationen für Hilfe. Ist jemand von euch auf so etwas gestoßen? Vielen Dank.