Nginx 配置下载附件让浏览器提示用户是否保存

Nginx配置下载附件让浏览器提示用户是否保存

 

by:授客  QQ1033553122

 

测试环境

nginx-1.10.0

 

问题描述:

前端页面,IE11浏览器下请求下载附件模板,针对xlsx格式文件,点击后会在浏览器中直接打开,并显示乱码。

 

解决方案:

修改Nginx配置,增加如下带背景色内容(添加http响应头)

add_header Content-Disposition: "attachment;

 

或者如下

add_header Content-Disposition: "attachment; filename=文件名";

 

说明:filename为下载的附件设置新的名称。

 

例:

    server {

        ……()

 

        location ~* \.(xlsx)$ {

            root /data/dir/;

            if ($request_filename ~* /*\.xlsx$){

                add_header Content-Disposition: "attachment; filename=$1";

            }

        }

    }

 

说明:

1$1  表示正则表达式匹配到的第一个参数值。

2、配置解读

如果请求匹配到 *.xlsx文件(不分大小写),则执行{ }配置块的内容。

如果请求资源文件路径$request_filename 匹配到了*.xlsx文件(不分大小写),则添加http响应头。

 

实现效果

 

posted @ 2018-03-31 13:14  授客  阅读(779)  评论(0编辑  收藏  举报