当前位置: 首页 > news >正文

网站建站管理系统最好的做网站公司有哪些

网站建站管理系统,最好的做网站公司有哪些,揭阳百度推广优化,网店推广新趋势需求 统计静态文件的下载次数;判断用户是否有下载权限;根据用户指定下载速度;根据Referer判断是否需要防盗链;根据用户属性限制下载速度; X-Accel-Redirect This allows you to handle authentication, logging or …

需求

  • 统计静态文件的下载次数;
  • 判断用户是否有下载权限;
  • 根据用户指定下载速度;
  • 根据Referer判断是否需要防盗链;
  • 根据用户属性限制下载速度;

X-Accel-Redirect

This allows you to handle authentication, logging or whatever else you please in your backend and then have NGINX handle serving the contents from redirected location to the end user, thus freeing up the backend to handle other requests. This feature is commonly known as X-Sendfile.
这个功能允许你在后端处理权限,日志或任何你想干的,Nginx提供内容服务给终端用户从重定向后的路径,因此可以释放后端去处理其他请求(直接由Nginx提供IO,而不是后端服务)。这个功能类似 X-Sendfile 。

不同Web服务器,相同功能,不同的标识:

nginx: X-Accel-Redirect

squid: X-Accelerator-Vary

apache: X-Sendfile

lighttpd: X-Sendfile/X-LIGHTTPD-send-file

X-Accel-Limit-Rate

限制下载速度,单位字节。默认不限速度。

X-Accel-Buffering

设置此连接的代理缓存,将此设置为no将允许适用于CometHTTP流式应用程序的无缓冲响应。将此设置为yes将允许响应被缓存。默认yes

X-Accel-Expires

如果已传输过的文件被缓存下载,设置Nginx文件缓存过期时间,单位秒。默认不过期。

X-Accel-Charset

设置文件字符集,默认UTF-8

使用条件

  • 必须有Nginx作为后端服务的代理;
  • 必须访问Nginx的代理地址,直接访问后端服务Nginx会报404
  • 可自行配置Content-Type来控制是下载(application/octet-stream)还是展示(image/jpeg等);

代码实现

  1. Nginx监听9876端口。
  2. Nginx代理后端服务的8080端口。
  3. 设置/testAccel路径为internal,指定具体文件存储的磁盘位置。
  4. 后端服务接收到文件下载请求,处理业务逻辑后X-Accel-Redirect/testAccel路径。
  5. Nginx收到后端返回信息中的X-Accel-Redirect请求头,接管文件下载或显示任务。
  6. 请求路径:http://localhost:9876/file/download/1234.jpg。

Nginx配置:

        location / {#root   html;root   F:/web/;index  index.html index.htm;try_files $uri $uri/ /index.html;}location /testAccel {internal;alias F:/web/testAccel/file;}location /file {proxy_redirect off;proxy_set_header Host  $host;proxy_set_header X-Real-IP $remote_addr;proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;proxy_pass http://127.0.0.1:8080;            }

Java代码

注意fileName添加:.+,或者获取不到文件后缀名。

    @GetMapping("/file/download/{fileName:.+}")public void download(HttpServletRequest request,HttpServletResponse response,@PathVariable("fileName") String fileName) {//统计//鉴权//判断RefererString referer = request.getHeader("Referer");System.out.println(referer);String prefix = "/testAccel";// 在这之前进行一些必要的处理,比如鉴权,或者其它的处理逻辑。// 通过X-Accel-Redirect返回在nginx中的实际下载地址response.setHeader("X-Accel-Redirect", prefix + "/" + fileName);response.setHeader("X-Accel-Limit-Rate", "1024");//限速,单位字节,默认不限response.setHeader("X-Accel-Buffering", "yes");//是否使用Nginx缓存,默认yes}

如果直接访问路径:http://localhost:9876/testAccel/1234.jpg,就会报404错误

参考:

https://www.zhangbj.com/p/507.html

分类: springmvc , nginx

http://www.yayakq.cn/news/10269/

相关文章:

  • 品牌网站设计案例淘宝客免费建网站
  • 做我女朋友套路网站wordpress小工具变成英文
  • 网站可以做推广沈阳市城市建设网站
  • 网站的推广有哪些方式哪里可以学习做网站
  • 常州网站建设找思创h5网页模板下载
  • 网站开发业务方向架构文档百度如何购买关键词
  • 学做网站论坛好吗河南省城乡建设厅网站
  • 网站建设参考线上推广方案模板
  • 网上商城网站 找什么做成品网站1688入门网
  • 龙海市住房和城乡建设局网站关于建设网站的图片
  • 如何网站切换制作北京的名片
  • 可以看所有网站的浏览器怎么网站建设公司
  • 商务局网站建设快速html5网页设计的网站
  • 承德网站建设报价网站建设html实训心得
  • 怎样用dw做网站导航条wordpress中常用插件安装包
  • 黑客怎么入侵网站wordpress搜索时间间隔
  • 棋牌类网站设计建设wordpress和dw
  • 投稿平台推荐小吴seo博客
  • 南宁网站关键字优化医疗网站建设行情
  • 模板建站seo优化南京十大软件公司排名
  • 云市场 wordpress枫林seo工具
  • 做房地产要自己开网站google搜索优化
  • 网站后台管理系统制作软件wordpress 底部工具栏
  • 带着做计算机项目的网站长尾词排名优化软件
  • 做网站实现自动生成pdf广州积分入学网站
  • 阿根廷网站后缀玩具网站的制作
  • 用自己的电脑做服务器建网站网站开发亿玛酷出名5
  • 哪家公司网站建设好点做网站好还是做app好
  • 微信自助建站系统wordpress引用页面
  • 化妆品网站建设流程图手机网站教程