gpt4 book ai didi

php - Firefox 下载(尝试打开).zip 文件为 .HTM

转载 作者:行者123 更新时间:2023-11-27 23:39:12 25 4
gpt4 key购买 nike

我正在创建可下载的 zip 文件,它几乎在任何地方都可以正常工作。但在 Mozilla Firefox 中保存此 zip 时,我收到奇怪的消息,指出 my_zip.zip 是 HTM 文件(对语言很抱歉,但我希望它很容易理解):
enter image description here
如果我选择保存选项,它将被保存为普通的 zip(根本没有 HTM 的迹象),但是在“打开为”部分只有打开 HTM 的程序

所以,问题是 如何让 Firefox 将此 zip 检测为 zip?
我目前正在使用这个 header (由 PHP 设置):

        header('Content-Description: File Transfer');
header("Content-Type: application/octet-stream");
header("Content-Disposition: attachment; filename=$zipFileName");
header("Content-Transfer-Encoding: binary");
header("Expires: Sat, 26 Jul 1997 05:00:00 GMT");
header("Cache-Control: no-store");
header('Pragma: no-cache');
header("Content-length: " . filesize($zipFileName));
readfile($zipFileName);

已经尝试使用 header("Content-Type: application/zip"); ,不起作用;加上 application/zip 不是标准的(正如我在一些标题相关问题中读到的)。

我正在使用 Mozilla Firefox v40.0.3,php 项目正在使用 Laravel 5.1 (我怀疑它与此有任何关系)


更新:
在尝试不同的 application\[format] 时,我在 header 后添加了 dump and die 命令

        //bunch of kosher headers here...
readfile($zipFileName);
dd(headers_list());//dumps and dies

我在下载窗口中得到一个 zip 类型。然后我发现在 dieexit 之后,我总是会得到正确的 zip 下载类型;然后我删除了所有 dump-and-die 部分,但下载类型仍​​然是 zip。我不知道我通过这种操作修复了什么。
我很想对这种奇怪的情况有一个解释

最佳答案

快速 google search表明内容类型似乎是罪魁祸首

 header("Content-Type: application/octet-stream");

尝试将其设置为 application/x-zip-compressed ?此外,此错误报告中的评论可能会有用:https://bugzilla.mozilla.org/show_bug.cgi?id=540900

关于php - Firefox 下载(尝试打开).zip 文件为 .HTM,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32456891/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com