设置防盗链时候指明和不指明空Referer的差别及实现后的效果?
什么是Referer?
这里的 Referer 指的是HTTP头部的一个字段,也称为HTTP来源地址(HTTP Referer)。用来表示从哪儿链接到眼下的网页。採用的格式是URL。
换句话说,借着 HTTP Referer 头部网页能够检查訪客从哪里而来。这也常被用来对付伪造的跨站点请求。
Referer的正确英语拼法是referrer。因为早期HTTP规范的拼写错误,为了保持向后兼容就将错就错了。其他网络技术的规范企图修正此问题。使用正确拼法,所以眼下拼法不统一。
比方,您假设点击以下资料来源后面*的网址链接。那么浏览器会产生一个送到*的Webserver的HTTP请求,该请求中则会包括一个Referer字段(即本页面的地址):http://kb.qiniu.com/52pw6cde
资料来源:http://zh.wikipedia.org/wiki/HTTP參照位址
什么是空Referer,什么时候会出现空Referer?
首先,我们对空Referer的定义为。Referer 头部的内容为空,或者,一个HTTP请求中根本不包括Referer头部。
那么什么时候HTTP请求会不包括Referer字段呢?依据Referer的定义,它的作用是指示一个请求是从哪里链接过来,那么当一个请求并非由链接触发产生的。那么自然也就不须要指定这个请求的链接来源。
比方,直接在浏览器的地址栏中输入一个资源的URL地址。那么这样的请求是不会包括Referer字段的,由于这是一个“凭空产生”的HTTP请求,并非从一个地方链接过去的。
那么在防盗链设置中,同意空Referer和不同意空Referer有什么差别?
在防盗链的白名单设置中,假设指名白名单中包括空的Referer,那么通过浏览器地址栏直接訪问该资源URL是能够訪问到的;
但假设不指名须要包括空的Referer,那么通过浏览器直接訪问也是被禁止的。
什么是防盗链设置中的空Referer的更多相关文章
-
【转载】 IIS服务器防盗链设置
在实际运行的服务器环境中,我们自己网站中的资源一般不希望被外部网站引用,被外部网站引用IIS网站中的资源文件,一是会加重了服务器的负担,二是占用了你自己服务器的外网带宽资源,因此我们希望防止盗链这种情 ...
-
完美的nginx图片防盗链设置详解
一般,我们做好防盗链之后其他网站盗链的本站图片就会全部失效无法显示,但是您如果通过浏览器直接输入图片地址,仍然会显示图片,仍然可以右键图片另存为下载文件!依然可以下载?这样就不是彻底的防盗链了! [r ...
-
nginx作防盗链设置
盗链是一种损害原有网站合法权益,给原网站所在服务器造成额外负担的非法行为. 盗链的实现原理: 客户端向服务器请求资源时,为了减少网络带宽,提高响应时间,服务器一般不会一次将所有资源完整地传回给客户端. ...
-
Nginx 防盗链设置
何谓'盗链' 此内容不在自己服务器上,而通过技术手段,绕过别人放广告有利益的最终页,直接在自己的有广告有利益的页面上向最终用户提供此内容. 常常是一些名不见经传的小网站来盗取一些有实力的大网站的地址( ...
-
web页面防盗链功能使用--request.getHeader(";Referer";)
使用Request对象设置页面的防盗链 所谓的防盗链就是当你以一个非正常渠道去访问某一个Web资源的时候,服务器会将你的请求忽略并且将你的当前请求变为按正常渠道访问时的请求并返回到相应的页面,用户只有 ...
-
JAVA防盗链在报表中的应用实例
今天我们来聊聊Java防盗链,多说无用,直接上应用案例. 这里所用的工具是报表软件FineReport,搭配有决策系统(一个web前端展示系统,主要用于权限控制),可以采用java防盗链的方式来实现页 ...
-
javaweb之request获取referer请求头实现防盗链
package test.request; import java.io.IOException; import javax.servlet.ServletException; import java ...
-
什么是Referer?Referer的作用?空Referer是怎么回事?
什么是Referer? Referer是 HTTP请求header 的一部分,当浏览器(或者模拟浏览器行为)向web 服务器发送请求的时候,头信息里有包含 Referer.比如我在www.sojson ...
-
Referer和空Referer
参考CSDN 原文:https://blog.csdn.net/hxl188/article/details/38964743 Referer和空Referer 最近公司有个接口需要针对几个域名加白名 ...
随机推荐
-
ASP.MVC 基于AuthorizeAttribute权限设计案例
ASP.MVC上实现权限控制的方法很多,比如使用AuthorizeAttribute这个特性 1.创建自定义特性用于权限验证 public class AuthorizeDiy : Authorize ...
-
Understanding transient variables in Java and how they are practically used in HashMap---reference
What is the significance of the transient keyword in Java? If you know the answer, good! you are a p ...
-
Mybatis Dynamic Query 简单筛选
在框架中,筛选描述类有两种(FilterDescriptor, FilterGroupDescriptor),这里我们主要举例来说明FilterDescriptor用法. FilterDescript ...
-
form表单样式
<BODY> <div id="modify-data"> <form class="modify-data-form"> ...
-
shell编程学习笔记(四):Shell中转义字符的输出
通过echo可以输出字符串,下面看一下怎么输出特殊转义字符,首先我先列出来echo的转义字符: \\ 输入\ \a 输出警告音 \b 退格,即向左删除一个字符 \c 取消输出行末的换行符,和-n选项一 ...
-
es6 复制对象
var pp = {'name': '1','work': 'teacher'} var kk = [1,2] var tt = [] for(let index = 0; index<kk.l ...
-
UVA101 【The Blocks Problem】
一个大模拟!!! 总的来说就是碰到move就要把a上面的全部放回原处. 如果碰到onto就要把b上面的全部放到原处. 因为move是只移动a一个,所以a上面的要归位,而pile是移一堆,所以不用. o ...
-
MD5加密算法中的加盐值 ,和彩虹表攻击 防止彩虹表撞库
一.什么是彩虹表? 彩虹表(Rainbow Tables)就是一个庞大的.针对各种可能的字母组合预先计算好的哈希值的集合,不一定是针对MD5算法的,各种算法的都有,有了它可以快速的破解各类密码.越是复 ...
-
mysql补充(4)数据完整性
数据完整性(Data Integrity)是指数据的精确性(Accuracy) 和可靠性(Reliability).(补充mysql数据完整性和约束) 它是应防止数据库中存在不符合语义规定的数据和防止 ...
-
react的基本概念
数据流向 数据的改变发生通常是通过用户交互行为或者浏览器行为(如路由跳转等)触发的,当此类行为会改变数据的时候可以通过 dispatch 发起一个 action,如果是同步行为会直接通过 Reduce ...