抛个关于nginx下载文件乱码的问题

今天做项目,需要下载pdf文件,要显示中文名字,比如:服务协议.pdf

前端页面的请求是:localhost/test/test.pdf?n=服务协议

test.pdf放在nginx上

nginx添加如下配置:

location ~* /test.+\.pdf {
                root  /var/www/html/ ;
                add_header Content-Type “application/pdf; charset=utf-8”;
                add_header Cache-Control “no-cache, no-store, max-age=0”;
                add_header Content-Disposition “attachment;filename=$arg_n.pdf”;
        }


之后再个浏览器上点击下载该文件,都可以正常下载

但是只有chrom能正确显示文件名:“服务协议.pdf”

ie显示乱码safari显示的为转义后的名字,类似:%BY%E7%8E.pdf这样的


有没有什么geek技巧可以解决这个编码问题呢

(万般无奈,我最后还是走的后端服务读取文件下载)

    原文作者:_虾_米_
    原文地址: https://blog.csdn.net/ldc9001/article/details/62430275
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞