php file_get_contents auf die lokale Datei über http

<?php

error_reporting(E_ALL);

if(file_get_contents("http://localhost/antispam/img.php") == false)
    print 'Error';
else
    print 'Read successfully';

?>

Immer diese Drucke error. img.php gibt ein php-generiertes Bild in Ordnung, aber nicht gelesen werden kann, indem der obige code. Mein php.ini scheint typisch und es werden keine Fehler angezeigt, was bin ich?

Hinweis allow_url_fopen bereits auf On und 1

img.php

$code = 'default';
header("Content-Type: image/jpeg");
$im = @imagecreate(200, 50) or die ("Cannot Initialize new GD image stream");
$bgColour = imagecolorallocate($im, 0, 0, 0);
$textColour = imagecolorallocate($im, 233, 14, 91);

$wSpace = 30; $hSpace = 20;
$prevW = 0;

for($i = 0; $i < strlen($code); $i++)
{
    $w = $prevW + rand(20, $wSpace);
    imagestring($im, 5, $w, rand(0,$hSpace),  substr($code, $i, 1), $textColour);
    $prevW = $w;
}

imagejpeg($im);
imagedestroy($im);
@Raina77ow sagte, können Sie nicht auf über http es sei denn allow_url_fopen eingestellt ist. Die andere option ist, um den Zugriff auf die Datei über eine lokale Datei-Pfad, etwas entlang der Linien von /var/www/antispam/img.php oder wie auch immer der Pfad auf Ihrem server.
ich habe schon überprüft, meine php.ini und alles scheint in Ordnung. Die Datei ist lokal wie auch in es ist im selben dir wie die Datei, aber ich verstehen Sie Ihren Punkt.
Verwenden Sie die cUrl-Funktionen.
Was passiert, wenn Sie es ändern, um file_get_contents("http://localhost/antispam/img.php") === false)...
Warten, wenn === false zurück false, dann ist die Funktion arbeiten, es ist einfach zu Lesen, nichts von der Seite. Sind Sie sicher, dass img.php richtig schafft das Bild?

InformationsquelleAutor Lee | 2012-11-01

Schreibe einen Kommentar