referer htttp headers 统计信息 防盗链

HTTP headers是HTTP请求和相应的核心模块,它承载了关于客户端浏览器、请求页面、服务器等相关信息。Referer是HTTP头中的一个属性,告诉服务
器我是从哪个页面链接过来的,所携带的信息用于做统计,也可以用来防盗链。
获取方式有两种:

1服务器端获取

Java中获取referer的方法是:request.getHeader("referer")

String referer = request.getHeader("referer");
//getServerName() 返回网站的域名
if(referer==null || !referer.contains(request.getServerName())){
}else{}

request.getHeader("referer")可用的情况:
1.<a href="">
2.表单提交

不可用的情况:
1.从收藏夹链接
2.自定义地址
3.浏览器直接输入
...

2 js获取
利用js的 var ref=document.referrer 方法可以准确地判断网页的真实来路。
然后可以使用ref.indexOf("xx")==-1判断网页来路

然而有时候Javascript中读到的referrer却是空字符串。下面提供园友的博客,供需要时参考

http://www.cnblogs.com/rubylouvre/p/3541411.html

时间: 2024-08-09 23:10:47

referer htttp headers 统计信息 防盗链的相关文章

请求头和防盗链

getHeader(name)方法 --- String ,获取指定名称的请求头的值 getHeaders(String name)方法 --- Enumeration<String> ,获取指定名称的请求头的值的集合,因为可能出现多个重名的请求头 getHeaderNames方法 --- Enumeration<String> ,获取所有请求头名称组成的集合 getIntHeader(name)方法 --- int ,获取int类型的请求头的值 getDateHeader(nam

Linux Centos7下实现nginx防盗链部署

一.原理: nginx 防止网站资源被盗用模块 ngx_http_referer_module ? HTTP Referer是Header的一部分,当浏览器向Web服务器发送请求的时候,一般会带上Referer,告诉服务器我是从哪个页面链接过来的,服务器借此可以获得一些信息用于处理,例如防止未经允许的网站盗链图片.文件等.因此HTTP Referer头信息是可以通过程序来伪装生成的,所以通过Referer信息防盗链并非100%可靠,但是,它能够限制大部分的盗链情况. 二.防盗链配置 [[emai

HTTP 笔记与总结(6)referer 头与防盗链

在百度贴吧(或 QQ 空间等)中找到一张图片,复制图片地址,在站外通过 img src 引用,会发现: 此外,在一些统计软件中,统计访客的来路(直接访问.外部链接.搜索引擎),都用到了 HTTP 协议请求头中 Referer 的知识. [例]直接访问 www.baidu.com 和 在通过本地页面跳转至 www.baidu.com,观察 HTTP 请求头信息的差异: ① 直接访问百度,HTTP 请求头信息: ② 通过本地 referer.html 跳转至 www.baidu.com: HTTP

05 referer头与防盗链

像上图中的这个效果,当我们在网页里引用站外图片时,常出现这样的情况. ??? 服务器是怎么样知道,这个图片是在站外被引用的呢? 还有在网站的统计结果,统计用户从何而来,如下图 ??? 统计时,是如何得知用户从哪儿来到的本网站呢? 在Http协议中,头信息里,有一个重要的选项: Referer Referer: 代表网页的来源,即上一页的地址 如果是直接在浏览器上输入地址,回来进来,则没有Referer头. 这也是: 为什么服务器知道我们的图片是从哪儿引用的,也知道我们的客户从哪个网站链接点击过来

web页面防盗链功能使用--request.getHeader(&quot;Referer&quot;)

使用Request对象设置页面的防盗链 所谓的防盗链就是当你以一个非正常渠道去访问某一个Web资源的时候,服务器会将你的请求忽略并且将你的当前请求变为按正常渠道访问时的请求并返回到相应的页面,用户只有通过该页面中的相关操作去访问想要请求的最终资源. 例如,你有一个访问某资源的网址,但是你事先不知道这个网址是有防盗链的,那么当你输入该网址时你可能会发现,并没有马上跳转到你想要的资源页面而是一些无关的信息页面,但是就是在这些信息页面中你发现有一个超链接或是其他操作可以跳转到你所访问的最终资源页面.

Nginx-利用Referer防盗链

面的内容包括:1 Nginx Referer 模块2 valid_referers 指令3 测试Nginx 防盗链 1 Nginx Referer模块当一个请求头的Referer字段中包含一些非正确的字段,这个模块可以禁止这个请求访问站点.这个头可以随意的伪造,因此,使用这个模块并不能100%的阻止这些请求,绝大多数拒绝的请求来自一些典型的浏览器,可以认为这些典型的浏览器并不能提供一个"Referer"头,甚至是那些正确的请求. 2 valid_referers 指令语法:valid_

Nginx实现图片防盗链(referer指令)

什么是图片盗链   每张图片在浏览器中都有对应的图片地址,在浏览器中输入这个地址是可以直接拿到图片. 图片盗链,就是盗用者在他的站上需要显示我们的图片,他没有把图片拿下来,放到他的服务器上, 而是直接就用我们的,图片地址,来请求到我们的服务器来拿图片,流量产生在我们这边. referer referer指令通过检测访问图片的来源,来做出一些控制. 图片访问的来源 通过谷歌/百度访问 通过浏览器直接访问 本站点的访问 来自非法的域名访问 referer nginx 模块 ngx_http_refe

什么是防盗链设置中的空Referer

设置防盗链时候指明和不指明空Referer的区别及实现后的效果? 什么是Referer? 这里的 Referer 指的是HTTP头部的一个字段,也称为HTTP来源地址(HTTP Referer),用来表示从哪儿链接到目前的网页,采用的格式是URL.换句话说,借着 HTTP Referer 头部网页可以检查访客从哪里而来,这也常被用来对付伪造的跨网站请求. Referer的正确英语拼法是referrer.由于早期HTTP规范的拼写错误,为了保持向后兼容就将错就错了.其它网络技术的规范企图修正此问题

【jsp 防盗链】Referer的简单使用

在web系统中,盗链的问题时有发生,即复制一个url地址,在另一个地方也能访问. 在jsp中通过request对象可以获取客户请求信息和表单信息,在客户请求头信息中,"Referer"属性是上一次请求的url,利用"Referer"属性值可以解决盗链的问题 index.jsp <%@ page language="java" import="java.util.*" pageEncoding="utf-8&qu