PHP: "file_get_contents()" NULL zurückgeben von content-URL verifiziert

Bin ich Wetten, dass es dann am Ende wird etwas einfacher ... aber ich kann mit einer hand in spotting es.

Problem:

Wenn ich versuche, den Inhalt eines bestimmten lokalen URL über file_get_contents(), es kommt zurück als leeren string " (length=0).

, Was ich versucht habe:

    $url = 'http://localhost/bbq/index.php/company/get/id/2131/return/json';
    $results = file_get_contents($url);
    echo'<pre>Results:<br />',var_export($results),'</pre>';

Wenn Sie direkt besuchen http://localhost/bbq/index.php/company/get/id/2131/return/json alles echos schön: {"id":"2131","value":"Acme Anvil Corp."}

Check mich aus, ich versuchte es mit $url = 'http://www.google.com', und es funktionierte wie erwartet so dann habe ich versucht, eine separate Lokale uri http://localhost/?phpinfo=1, und es arbeitete auch gut.

Frage:

Was bin ich???

[ZUSÄTZLICHE INFO]

allow_url_fopen ist AUF

Ich kann gefunden haben etwas.

Als Sicherheitsmaßnahme in CODEIGNITER-Projekte, die erste Zeile der controller-Skript hat:

    if ( !defined('BASEPATH')) exit('No direct script access allowed');

Kommentieren Sie es aus nicht alle Verbesserungen, aber ich dachte, es kann sein, erwähnenswert, dennoch.

Auch hier ist ein dump der HTTP-Antwort-Header. Vielleicht hat jemand etwas sehen können. Es scheint alles ziemlich geradlinig zu mir, aber ich weiß nicht wirklich, was ich gesucht werden soll.

array (size=13)
  0 => string 'HTTP/1.1 200 OK' (length=15)
  1 => string 'Date: Thu, 27 Dec 2012 19:58:47 GMT' (length=35)
  2 => string 'Server: Apache/2.4.2 (Win64) PHP/5.4.3' (length=38)
  3 => string 'X-Powered-By: PHP/5.4.3' (length=23)
  4 => string 'Set-Cookie: csrf_cookie_name=4ae46f9a7e612ae22a080a4e88bd349c; expires=Thu, 27-Dec-2012 21:58:47 GMT; path=/' (length=108)
  5 => string 'Set-Cookie: PHPSESSID=ah70p0ldl5qptcauei1t8ihud3; path=/' (length=56)
  6 => string 'Expires: Thu, 19 Nov 1981 08:52:00 GMT' (length=38)
  7 => string 'Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0' (length=77)
  8 => string 'Pragma: no-cache' (length=16)
  9 => string 'Refresh: 0;url=http://localhost/bbq/index.php/index.php/user/login' (length=66)
  10 => string 'Content-Length: 0' (length=17)
  11 => string 'Connection: close' (length=17)
  12 => string 'Content-Type: text/html' (length=23) 

[/ADDITIONAL INFO]

BTW, ich bin mit:

  • WAMPSERVER auf Win7 64
  • Apache 2.4.2
  • PHP 5.4.3
  • CodeIgniter 2.1.2
print_r($http_response_header); könnte Ihnen eine Ahnung, warum es nicht reagiert
Ist die allow_url_fopen Einstellung aktiviert?
funktioniert es, wenn Sie ersetzen Sie "localhost" mit 127.0.0.1?
Greifen nach Strohhalmen hier, aber versuchen Sie,/? zu deiner ursprünglichen URL.
Was genau zurückgegeben wird???? Genau? Leer ist kein Gültiger PHP-Wert. Ist es FALSE? Ist es wirklich NULL? Was ist es? Was bedeutet var_dump dazu sagen? Warum nicht geben Sie die debug-Ausgabe, die Sie sammeln direkt mit deiner Frage?

InformationsquelleAutor mOrloff | 2012-12-27

Schreibe einen Kommentar