考虑以下(简化的)PHP脚本:
<?php
header("Content-Length: ".filesize("data/file.svg"));
header("Content-Type: image/svg");
$file = fopen("data/file.svg","rb");
while(!feof($file))
{
print(fread($file, 1024*8));
ob_flush();
flush();
}
?>
Firefox正确下载文件&#34; file.svg&#34;当直接调用该php脚本的URL时。但是当它通过HTML src标签使用时,如:
<img src="https://example.org/script.php">
然后Firefox报告&#34;无法加载图像&#34;。开发人员工具中的“网络”选项卡表示它已转移&#34;已转移&#34; 2.92 KB,但它表示&#34;尺寸&#34;是0 KB。 为什么它适用于第一种情况,而不是第二种情况?
答案 0 :(得分:1)
正如@Sherif在评论中已经说过我使用了错误的MIME类型。用image/svg
替换image/svg+xml
修复了错误。