Safari浏览器下载word文件,后缀多拼接了.html,导致打开下载文件乱码

您所在的位置:网站首页 苹果电脑谷歌浏览器下载图片会自动打开吗 Safari浏览器下载word文件,后缀多拼接了.html,导致打开下载文件乱码

Safari浏览器下载word文件,后缀多拼接了.html,导致打开下载文件乱码

2024-02-02 16:04| 来源: 网络整理| 查看: 265

1、遇到的问题

谷歌和ie下载文件正常

Safari浏览器下载word文件,后缀多拼接了.html,导致打开下载文件乱码,下载的文件名称为test.doc.html,手动去掉多余的后缀.html即可正常访问word文件

2、原因

经排查代码中设置head头为text/html导致的,safari才拼接了后缀.html;修改为

header("Content-type:applicatoin/octet-stream;charset=utf-8");完美解决问题

3、转载延伸

在谷歌、火狐等浏览器中,Content-type 的设置貌似并不重要,但在 Safari 上则有不同:

当 Content-type 设置为 text/html 时,下载的文件会被自动添加上后缀 .html;当设置为 application/x-msdownload 时,下载的文件会被自动添加后缀 .exe。

content-type 用于告诉浏览器应该以何种方式处理文件。浏览器会尽量以可识别的方式来打开它,如图一为相关的测试情况:

content-type

从图一可以看出,如果你觉得针对不同文件类型区别设置不同的 Content-type 太麻烦,那么将它设置为 applicatoin/octet-stream 是比较好的选择。

4、延伸

ie下载时,文件名称乱码,转下编码即可。

$saveFileName = iconv("UTF-8","GBK",$saveFileName);

https://blog.csdn.net/qq_36028303/article/details/80939774https://www.cnblogs.com/jqy666/p/4957147.html



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3