nginx配置location正确下载的坑

博客介绍了在浏览器中下载txt文件直接打开的解决办法,即在nginx的location中配置Content - Disposition attachment;。还分享了配置时遇到的问题,如语句中冒号导致谷歌浏览器出现异常,去掉冒号即可解决,并将给出正确下载txt等的配置方式。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一般在浏览器中下载txt文件会直接打开,解决办法是在location中配置Content-Disposition attachment;在nginx中通过反向代理可以直接过滤访问的url在指定的访问中添加header。

 

今天在配置的时候遇到了这样的问题:点击下载直接打开,放在server中也不会生效,为了这个反复试了好久,最后在浏览器中查看response header,发现:

Content-Disposition 后面多了个冒号,这是因为配置的时候 Content-Disposition attachment;语句写成Content-Disposition: attachment; 这样在火狐和ie中是没有问题的,但是谷歌会出现这样的问题,所以配置的时候去掉冒号就可以解决了。

 

下面附上正确下载txt等配置方式:

location /{
  if ($request_filename ~* ^.*?\.(txt|pdf|doc|xls)$){ 
          add_header Content-Disposition "attachment;";
  }
}

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值