2016-12-14 6 views
-1

に失敗した私は、このエラーを取得しています:PHP - 警告:getimagesizeストリームをオープンに失敗しました:HTTPリクエストが

Warning: getimagesize(http://dev.clearcaresolutions.local/viewimage.php?file=screenshot_from_2016-11-29_12-12-06.png&type=form): 
failed to open stream: HTTP request failed! HTTP/1.0 
500 Internal 
Server Error in /var/www/vhosts/dev.clearcaresolutions.local/current/modules/tasks/edit_log.php on line 845 

これは応答コードである(判断しないでください、私は私が持っている、これを書いていませんそれと一緒に暮らすために:/):

$fSize = filesize($dataPath.'/'.$file); 
$fType = cFile::getMimeType($file); 

    // write the HTML headers 
    header ("X-Frame-Options: sameorigin"); 
    #header("X-Frame-Options: deny");           # on 
    header ("X-XSS-Protection: 1; mode=block");         # off 
    header ("X-Content-Type-Options: nosniff");         # on 
    // BEGIN extra headers to resolve IE caching bug (JRP 9 Feb 2003) 
    header("Pragma: ");               # on 
    header("Cache-Control: ");             # on 
    header("Expires: Mon, 26 Jul 1997 05:00:00 GMT");       # on 
    header("Last-Modified: " . gmdate("D, d M Y H:i:s") . " GMT");    # on 
    header("Cache-Control: no-store, no-cache, must-revalidate"); //HTTP/1.1 # on 
    header("Cache-Control: post-check=0, pre-check=0", false);     # on 
    // END extra headers to resolve IE caching bug 

    header("MIME-Version: 1.0"); 
    header("Content-Description: File Transfer"); 
    header("Content-Length: {$fSize}");           # --- 
    header("Content-Type: {$fType}");           # on 
    header("Content-Transfer-Encoding: binary");        # --- 
    header("Content-disposition: {$mode}; filename={$file}");     # on 
    echo readfile($dataPath.'/'.$file); 

$ FSIZE$ FTYPE正しいので、これは問題ではありません。私は$フィールド[ 'fieldsrc']を使用する場合は(どのようなものになります

$protocol = stripos($_SERVER['SERVER_PROTOCOL'],'https') === true ? 'https://' : 'http://'; 
(line 845) list($width, $height) = getimagesize($protocol.$_SERVER['SERVER_NAME'].$field['fieldsrc']); 

のためのデータとして

/viewimage.php?file=screenshot_from_2016-11-29_12-12-06.png&type=form 

は、これは私が応答を呼び出す方法ですsrcイメージタグ内にイメージが正しく表示されているので、応答が正しいと推測しています。ここで何が間違っているのでしょうか?

+1

& amp; '...?それは良く見えません... – deceze

+0

は 'edit_log.php'から投稿したコードですか?もしそうなら、どの行が845であるかを指摘することができます。 – castis

+0

行** 845 **は**リスト($ width、$ height)= getimagesize($プロトコル。$ _ SERVER ['SERVER_NAME']。$ field ['fieldsrc']); ** – Sasha

答えて

0

readfileはすでにファイルの内容を出力しています。その前にエコーを取り除く。それだけです。

readfile($dataPath.'/'.$file); 
+0

エコーを削除しました。同じエラーが発生しました。 – Sasha

関連する問題