我在的fancybox显示图像大问题。 的图像会以header()
和readfile()
“生成”的PHP。PHP图像头和JavaScript加载
当我直接从浏览器访问脚本一切正常,但是当请求来自的fancybox JavaScript的浏览器突然停止响应,并在负荷内容区域很长一段时间后,我得到的二进制代码,而不是图像。
下面是代码:
ob_clean();
header('Content-Type: '.$post->post_mime_type);
$name = basename($post->guid);
$base = home_url();
$path= $_SERVER{'DOCUMENT_ROOT'}.str_replace($base,'',$post->guid);
header ('Content-Disposition: inline; filename='.$name);
header ('Content-length: ' .filesize($path));
readfile($path);
的内容屏幕装入的fancybox:http://img502.imageshack.us/img502/8535/screenq.png
这是否发生在所有浏览器?尝试使用Firebug的插件到Firefox,并期待在Net选项卡来检查时的fancybox – Basic 2010-12-18 14:43:03
要求恰好正在发送到浏览器,这是非常奇怪的,标题看起来不错,对我来说:http://img24.imageshack.us/img24 /1300/jsheader.png – Adam 2010-12-18 14:52:31
同意 - 他们看起来正确。我唯一能想到的就是fancybox试图根据文件名猜测图像类型 - 因为你是通过重写的URL来提供它的(至少如果我正确地阅读你的屏幕截图),没有文件名组件。为了测试的目的,您可以将url语法更改为'/f5/f5.png'吗? –
Basic
2010-12-18 14:57:51