通过Nginx转发的Fastdfs文件地址,在浏览器页面上会直接打开而不提示下载框的解决方案
- 找到nginx的配置文件
nginx.conf
- 执行命令
vim nginx.conf
,修改配置如下:
示例配置是https转发的server配置,http的server配置同理,都只需要修改loacation里面的内容即可
# HTTPS server#server {listen 9080 ssl;server_name 你的域名会对外公网IP;ssl_certificate 证书存放位置;ssl_certificate_key 证书密钥存放位置;ssl_session_cache shared:SSL:1m;ssl_session_timeout 5m;ssl_ciphers HIGH:!aNULL:!MD5;ssl_prefer_server_ciphers on;location / {root html;index index.html index.htm;}location ~ /group([0-9]) {root /opt/fastdfs/;if ( $query_string ~* ^(.*)download=config\b|1\b(.*)$ ){add_header Content-Disposition "attachment;fileName=$arg_filename";}ngx_fastdfs_module;}}
备注说明
if ( $query_string ~* ^(.*)download=config\b|1\b(.*)$ ){add_header Content-Disposition "attachment;fileName=$arg_filename";}其实就是在nginx响应的文件流头部加上了Content-Disposition "attachment",其中`download`参数和`filename`参数可以自定义,那么前端传入的参数作对应修改。若不想自定义文件名称,直接使用fastdfs存储的文件名,即配置修改为如下即可:if ( $query_string ~* ^(.*)download=config\b|1\b(.*)$ ){add_header Content-Disposition "attachment;";}
fastdfs原文件下载地址
https://域名或对外公网IP:9080/group1/M00/00/00/CgCBCWBcQPWAGEWBAAAgzL-m07c153.txt前端将地址上携带参数`download`和`filename`即可触发下载弹出框
https://域名或对外公网IP:9080/group1/M00/00/00/CgCBCWBcQPWAGEWBAAAgzL-m07c153.txt?download=1&filename=你需要保存的文件名称
通过Nginx转发的Fastdfs文件地址,在浏览器页面上会直接打开而不提示下载框的解决方案相关推荐
- 浏览器通过apache访问php文件提示下载问题,更改项目文件目录
在配置了apache和php后,首次访问php文件时,提示下载,解决办法如下 在apache安装目录下,有个conf文件夹,打开该文件夹下的httpd.conf配置文件,加入如下代码: AddType ...
- html判断是否在微信里打开,JavaScript判断浏览器内核,微信打开自动提示在浏览器打开...
微信会屏蔽 URL 自定义的 scheme ,导致无法跳转手机中的浏览器.网上有一些工具类网站可以实现直接跳转浏览器,之后有机会我会整理一下.我们今天只讨论通过 JavaScript 判断是否在微信浏 ...
- 后端输出流文件时,浏览器不保存文件,不弹下载框
实践得知:通过ajax请求后端时,浏览器不会保存文件.因为ajax不支持返回二进制流. 我用的是axios也不行 解决方法: //导出xxx(){console.log(this.data2)Vue. ...
- 在浏览器中Hadoop的Browse Directory不能下载文件的解决方案
在Windows下找到:C:\Windows\System32\drivers\etc的hosts文件,事先把hosts文件属性的只读取消掉,如下图: 如果不取消只读,那么进入notepad++后会出 ...
- JavaScript判断浏览器内核,微信打开自动提示在浏览器打开
微信会屏蔽 URL 自定义的 scheme ,导致无法跳转手机中的浏览器.网上有一些工具类网站可以实现直接跳转浏览器,之后有机会我会整理一下.我们今天只讨论通过 JavaScript 判断是否在微信浏 ...
- 关于pdf文件直接在chrome浏览器中直接打开而不是下载的问题
这个原因就是:打开chrome的设置 => 高级 => 内容设置 => pdf => 就是这个东西,.搞得我好长时间不知道怎么回事...阿西吧!!据我所知,火狐也有这种问题.. ...
- SpringMVC+ajaxFileUpload上传图片 IE浏览器弹下载框问题解决方案
如题,简单记录一下这个问题的解决办法,导致问题的核心原因是:ajaxfileupload不支持响应头ContentType为application/json的设置,并且IE也不支持这种格式,而当我们用 ...
- python 实现 浏览器页面转图片
python 实现 浏览器页面转图片 准备:需要下载chromedriver.exe (无头浏览器),放到你的xxxx.python 目录下 ChromeDriver 是 Chrome 驱动,是 Py ...
- charles请求转发_用免费开源的frp实现内网穿透,使用nginx转发的方式去掉端口号...
需要用内网穿透技术来实现通过其他公网 IP 来访问家里的 NAS 设备的需求,frp使用起来更加简便灵活,以及项目一直开源,所以本文选择frp作为示例 frp的github地址 :https://gi ...
- 【记录一次nginx转发 80端口无效】
提示:记录一次nginx转发 80端口无效 文章目录 一.记录一次nginx转发 80端口无效 手动分割线 一.记录一次nginx转发 80端口无效 在自己的服务器上玩nginx,想直接访问域名调到我 ...
最新文章
- 虚拟机Linux下解决ping时出现 unknown host问题
- 【工具】git笔记(一)
- shell-----函数库调用
- testng执行参数_TestNG中注解使用 笔记
- imagick php 缩放,php使用imagick模块实现图片缩放、裁剪、压缩示例
- GitHub入门详解
- 麒麟980+巴龙5000!华为Mate 20 X 5G版通过3C认证:支持40W快充
- CentOS下安装Tomcat并配置JRE
- 12.解决SUSE Linux无法使用SSH登录的问题
- SharePoint 2010的Form认证的用户注册功能
- WinForm窗体及其控件的自适应
- C语言 链表 3个结点,一个关于C语言链表头结点的问题
- XML Schema快速入门(三)语法之复杂类型
- omnet++ tictoc2 实例分析
- 为什么电梯安装企业项目接得更多,利润更少?
- yy神曲url解析php_单文件PHP版视频解析源码(中间件)
- LeetCode 229 求众数 II
- 发一个自己常用的通信词汇缩写表(实时更新)
- 解决Anaconda无法更新的问题
- Ubuntu的踩坑记录
热门文章
- 基于Arch GNU/Linux的简体中文live系统 archlive
- (3) IFC文件几何模型 (Industry Foundation Class)
- 添加nginx作为系统服务
- 利用计算机来对指纹,指纹识别系统(文献综述).doc
- 2021-09-10ESSM, CVR预估到底要预估什么
- Chrome浏览器占用CPU资源过高(Software Reporter Tool)
- 调用Python的PyAutoGUI模块模拟登录QQ邮箱
- 在个人博客网站上添加QQ邮箱的邮我功能
- 关于计算机体系结构-北桥和南桥
- APP性能测试——内存测试