file_get_contents: Error bei Browser / KEIN Fehler bei php -e
Atreides78
- php
0 mrjerk0 Atreides780 globe0 Atreides780 ChrisB
0 Edgar Ehritt
Hallo,
ich hoffe ich kriege hier einen passenden Tipp - bin langsam am verzweifeln:
Ich habe 2 Systeme. System 1 ruft einen Link auf System 2 auf - als Reaktion ruft System 2 auf System 1 (mit den von System 1 übergebenen Daten) einen Link auf System 1 auf um den Zugriff zu validieren.
System 1 liefert entweder "OK" oder "NOT OK".
Realisiert habe ich das über file_get_contents in auth.php (System 2):
$url="http://<IP System1>/authorize.php?id=$id&lsession=$lsession";
print $url;
$inhalt = file_get_contents($url) or die ("Error");
print $inhalt;
Nun das "komische":
Wenn ich über den Aufruf von System 1 mache, bekomme ich immer "Error" (über Browser).
Direkt die URL im Browser aufgerufen kommt entweder "OK" oder "NOT OK" (je nach Daten).
Direkt von System 2 über "php -e auth.php" bekomme ich eine Antwort von der URL.
Hat jemand da einen Tipp?
Vielen Dank im Voraus!
Hallo,
Hat jemand da einen Tipp?
Kann es sein dass PHP im Webserver keine URLs per file_get_contents holen darf (allow_url_fopen=false)?
Denn theoretisch kannst Du ja (glaube ich) dem Server das verbieten, während Du es auf der Konsole erlaubst.
Viele Grüße,
Jörg
Hallo,
»» Hat jemand da einen Tipp?
Kann es sein dass PHP im Webserver keine URLs per file_get_contents holen darf (allow_url_fopen=false)?Denn theoretisch kannst Du ja (glaube ich) dem Server das verbieten, während Du es auf der Konsole erlaubst.
Viele Grüße,
Jörg
Die Idee hatte ich auch schon - allow_url_fopen ist "On"
laut php -i.
php-Code von einem "anderen" Server konnte ich holen. Ist es evtl. eine Firewall-Problematik?
n'abend,
Die Idee hatte ich auch schon - allow_url_fopen ist "On"
laut php -i.
Ist ja fein, dass du überprüfst ob die Direktive in der CLI-Umgebung aktiviert ist. Du willst diese Information aber für die Webserver-Umgebungen haben. <?php echo phpinfo(); ?>
liefert die selben Infos wie php -i
. Schau dir die Infos vom Webserver genauer an.
weiterhin schönen abend...
Also:
hab jetzt {:.language-php}phpinfo()
eingebaut - per Browser:
allow_url_fopen On On
auch per "php -e" On On
error_get_last() liefert folgendes (Browser): {:.language-php}[function.file-get-contents]: failed to open stream: Connection refused
Deutet wohl eher auf ein Problem der Gegenseite hin, oder?
Hi,
error_get_last() liefert folgendes (Browser):
{:.language-php}[function.file-get-contents]: failed to open stream: Connection refused
Deutet wohl eher auf ein Problem der Gegenseite hin, oder?
Dann werte die Logs der "Gegenseite" aus.
MfG ChrisB
Hallo Atreides78,
| Hat jemand da einen Tipp?
Kann es sein dass PHP im Webserver keine URLs per file_get_contents holen darf (allow_url_fopen=false)?
nochmals nachgehagt: Kann es sein dass PHP im WEBSERVER keine URLs per file_get_contents holen darf?
$ php -i
ist vermutlich die CLI-Version PHPs. Diese aber nutzt zur Konfiguration php-cli.ini, nicht die php.ini/php-apache(2)handler.ini!
Gruß aus Berlin!
eddi
Hallo Edgar,
ich habe mir den Inhalt einer anderen Datei auf einem anderen Server holen können - sofern gehe ich mal davon aus, das bzgl. allow_url_fopen alles in Ordnung ist.
Gruss
Atreides78
Hallo Atreides78,
»» | Hat jemand da einen Tipp?
»» Kann es sein dass PHP im Webserver keine URLs per file_get_contents holen darf (allow_url_fopen=false)?nochmals nachgehagt: Kann es sein dass PHP im WEBSERVER keine URLs per file_get_contents holen darf?
$ php -i
ist vermutlich die CLI-Version PHPs. Diese aber nutzt zur Konfiguration php-cli.ini, nicht die php.ini/php-apache(2)handler.ini!Gruß aus Berlin!
eddi