0

出于某种原因,我无法正确显示图像,它抛出错误并没有告诉我出了什么问题,有什么想法吗?

代码

$finfo = finfo_open(FILEINFO_MIME_TYPE);
header("Content-type:   ".finfo_file($finfo, $filepath));
finfo_close($finfo);
header('Content-length: '.filesize($filepath));
header('Content-Disposition: inline; filename="'.$file.'"');
header('X-Sendfile: ' . $filepath );

标题

HTTP/1.1 200 OK
Date: Mon, 07 Apr 2014 13:45:37 GMT
Server: Apache/2.2.22 (Ubuntu)
X-Powered-By: PHP/5.3.10-1ubuntu3.10
X-Sendfile: /path/image.jpg
Content-Length: 0
Content-Disposition: inline; filename="image.jpg"
Keep-Alive: timeout=5, max=99
Connection: Keep-Alive
Content-Type: image/jpeg
4

2 回答 2

0

你确定你的文件在那里?

我明白了Content-Length: 0。我怀疑你想发送空文件。

尝试删除headers 输出并将其替换为echos 以查看脚本失败的位置。

于 2014-04-07T14:15:14.547 回答
0

上面的代码确实有效,它是 x-sendfile 在 apache 中没有正确配置

于 2014-04-07T14:26:15.340 回答