我有一个动态生成条形码的PHP脚本。我希望脚本作为附件/原始图像文件下载...所以我设置了以下标题:
while
但是,有一个奇怪的事情。在Firefox中,可以选择在浏览器中下载或打开。在浏览器中打开时,它会显示为HTML / txt文档。
是因为我链接到的文件是" barcode.php" - 它认为应该是HTML文档?我是否可以通过制作.htaccess规则来解决此问题,通过mod-rewrite将.gif文件重定向到该脚本...或者我是否错过了标题中的内容?
提前致谢!
答案 0 :(得分:0)
如果对header
和Content-Disposition
标题分别进行两次单独调用,您就可以使用Content-Type
功能进行一次调用。每个呼叫都发送一个新的标头;你不能"连接"使用分号的标头,这就是为什么在您的情况下丢弃了Content-Type
标头。
以下内容应该有效:
header('Content-Disposition: attachment; filename="eventbarcode.png"');
header('Content-type: image/gif');
header('Content-Transfer-Encoding: binary');