博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
使用Referer实现防盗链防下载
阅读量:6831 次
发布时间:2019-06-26

本文共 1008 字,大约阅读时间需要 3 分钟。

hot3.png

本内容是旧版,有点错误

新版本请跳  或者进入本博客查找

 

使用File来实现

public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException {		// TODO Auto-generated method stub		HttpServletRequest req = (HttpServletRequest) request;		HttpServletResponse res = (HttpServletResponse) response;		//获取链接		String referer=req.getHeader("referer");		//获取本电脑ip地址		String serverName=req.getServerName();		if(referer==null||!referer.contains(serverName)||referer.contains("mp4")){			req.getRequestDispatcher("/images/timg.jpg").forward(req, res);			return;		}		chain.doFilter(req, res);					}
RefererFilter
com.enet.fileter.RefererFilter
RefererFilter
/mp4/*

 

如上代码就实现了防盗链防下载功能,

防盗链指的是在网站上无法通过资源的链接直接访问到

防下载指的是在下载软件中无法用过资源的链接下载到对应的资源

防盗链和防下载最主要的区别:referer获取到的值

防盗链中referer获取到的值是本网站的链接地址

防下载中referer获取到的值是本资源的地址

 

防盗链和防下载道理是一样的,想访问该资源(图片,视频)就会替换其他的资源

 

转载于:https://my.oschina.net/u/3578766/blog/1555341

你可能感兴趣的文章
PySNMP学习笔记(一)
查看>>
Linux DHCP服务器
查看>>
[Unity] 文件夹图像资源的读取
查看>>
python发送邮件及附件
查看>>
戴志康:让我焦躁并痛苦着的O2O
查看>>
【go语言】wait,wait for me
查看>>
Kubernetes Dashboard 与DNS部署
查看>>
jquery checkbox挖坑
查看>>
测试机房网络连通性和延迟(shell脚本)
查看>>
Java反编译插件:Eclipse Class Decompiler
查看>>
You have new mail in /var/spool/mail/root
查看>>
Linux之nfs 部署和优化
查看>>
一道关于计算机如何做加法的面试题
查看>>
linux 字符搜索
查看>>
Django进阶-Forms模块实例
查看>>
linux学习计划第一周
查看>>
Dubbo的一次体验与分析
查看>>
工厂模式
查看>>
Linux系统安装初始化及优化脚本
查看>>
2FSK:Error: Unexpected MATLAB expression.
查看>>