PHP file_get_contents funktioniert nicht auf localhost

7

Ich arbeite auf meiner Website von localhost (http://172.16.65.1/) einen MAMP-Server auf OSX.
Ich möchte etwas JSON von Google laden und einige einfache Tests zeigen mir, dass ich hier ein Problem habe.

%Vor%

Was kann ich dagegen tun? Es funktioniert gut auf meinem Host-Provider-Server.

    
FFish 07.12.2011, 22:17
quelle

6 Antworten

5

Aus der Dokumentation für file_get_contents :

  

Eine URL kann als Dateiname mit dieser Funktion verwendet werden, wenn die Fopen-Wrapper aktiviert wurden. Weitere Informationen zum Angeben des Dateinamens finden Sie unter fopen (). In den unterstützten Protokollen und Wrappern finden Sie Links zu Informationen über die Fähigkeiten der verschiedenen Wrapper, Hinweise zu ihrer Verwendung und Informationen zu eventuell vorhandenen vordefinierten Variablen.

Checken Sie Ihre php.ini ein, damit allow_url_fopen auf on gesetzt wird.

BEARBEITEN:

Ich habe nicht bemerkt, dass du file_get_contents tatsächlich lokal verwenden kannst, also denke ich, dass das etwas mit deinem firewall settings zu tun haben könnte.

Versuchen Sie auch, die user_agent in Ihrem php.ini zu setzen, falls dies noch nicht geschehen ist.

    
Cyclonecode 07.12.2011, 22:21
quelle
9

Sie müssen auch PHP.ini file

einchecken %Vor%

ist aktiviert oder nicht, wenn nicht, dann aktivieren Sie das durch Entfernen; zeichen

%Vor%     
Niranjan 22.06.2013 10:54
quelle
3

Dies kann eine Einstellung in Ihrer php.ini-Datei sein. Es gibt eine Einstellung für allow_url_fopen, die die Möglichkeit aktiviert, entfernte Dateien von PHP zu öffnen. Aus Sicherheitsgründen ist dies normalerweise standardmäßig deaktiviert. Sie können es in Ihrer php.ini aktivieren, indem Sie die folgende Zeile hinzufügen:

%Vor%

Beachten Sie erneut die Sicherheitsbedenken bei der Verwendung dieser Funktion.

Ссылка

    
dchrastil 07.12.2011 22:25
quelle
3

Probieren Sie diese Funktion anstelle von file_get_contents () aus:

%Vor%

Es kann genau wie file_get_contents () verwendet werden, verwendet aber cURL.

Installiere cURL auf Ubuntu (oder einem anderen Unix-ähnlichen Betriebssystem mit aptitude):

%Vor%

Siehe auch cURL

    
chrishasbrouck 11.07.2014 22:59
quelle
1

In der zweiten versuchen Sie, eine Datei namens localhost im aktuellen Ordner zu öffnen, die nicht existiert und daher einen Fehler auslöst. Verwenden Sie stattdessen Ссылка . Und damit das funktioniert, müssen Sie allow_furl_open einstellen.

    
CodeCaster 07.12.2011 22:24
quelle
0

Ich war mit file_get_contents auf diese Weise:     file_get_contents ( " Ссылка ". $ screen. "& amp count = 5" );

Und das funktioniert nicht, also habe ich https zu http und nach, dass es gut funktioniert.

%Vor%     
karambir 19.11.2012 09:02
quelle