Nginx 之防盗链配置】的更多相关文章

有些朋友觉得防盗链就是防止图片,其实有很多东西要进行防盗链了,下面我来介绍在nginx中实现防盗链配置方法有对图片防盗链与下载资源等. 防盗链配置 假设网站域名是 www.php100.com. 编辑nginx.conf,在 www.php100.com 区域添加如下内容: location ~* .(gif|png|jpg|bmp|swf|flv)$ { valid_referers none blocked www.php100.com php100.com; if ($invalid_re…
如果我们自己网站内的图片资源被其它网站所盗用,这会增加自己网站的带宽资源,增加很多额外的消耗,而且会对我们系统的稳定性有影响,为了防止自己网站上的图片资源被其它网站所盗用,我们需要给自己的服务器配置防盗链. 在Nginx的配置文件nginx.conf的server段匹配图片资源允许的域名,不匹配的直接重定向到其它链接或者直接返回403错误.这样其它网站只要引用了自己网站的图片都会显示错误码或者重定向链接的图片了. # 图片防盗链 location ~* \.(png|jpg|jpeg|gif|s…
首先,我们需要知道通过什么来实现防盗的! http referer 是header的一部分,当浏览器向web服务器发送请求的时候,一般会带上referer,这是在告诉服务器是从哪个页面链接过来的,服务器借此可以获得一些信息用于处理: location /photos/ { valid_referers none blocked 域名/IP; if ($invalid_referer) { return 403; } } Http  Referer 模块的功能有: valid_referers  …
防盗链的含义:网站内容不在自己服务器上,而通过技术手段,绕过别人放广告有利益的最终页,直接在自己的有广告有利益的页面上向最终用户提供此内容. 常常是一些名不见经传的小网站来盗取一些有实力的大网站的地址(比如一些音乐.图片.软件的下载地址)然后放置在自己的网站中,通过这种方法盗取大网站的空间和流量. 这样的话,我们会看到每天访问量很大,占用很多不必要的带宽,浪费资源,所以我们需要做一些限制. 防盗链其实就是采用服务器端编程,通过url过滤技术实现的防止盗链的软件. 比如http://chinaap…
nginx rewrite重写规则与防盗链配置方法 时间:2016-02-04 15:16:58来源:网络 导读:nginx rewrite重写规则与防盗链配置方法,rewrite规则格式中flag标记的几种形式,盗链时返回403错误,允许的域名直接跟在第二行的域名后面.   nginx rewrite重写规则与防盗链配置方法 nginx rewite 规则,官方文档:http://wiki.nginx.org/NginxHttpRewriteModule nginx rewrite规则格式:r…
实验环境 一台最小化安装的CentOS 7.3虚拟机 配置:1核心/512MB nginx版本1.12.2 一.配置盗链网站 1.启动一台nginx虚拟机,配置两个网站 vim /etc/nginx/conf.d/vhosts.conf 添加以下内容 server { listen 80; server_name site1.test.com; root /var/wwwroot/site1; index index.html; location / { } } server { listen…
日常运维工作中,设置防盗链的需求会经常碰到,这也是优化网站的一个必要措施.今天在此介绍Nginx中设置下载防盗链和图片防盗链的操作~ 一.Nginx中下载防盗链的操作记录对于一些站点上的下载操作,有很多的下载来源不是本站,是迅雷.flashget, 源源不断的带宽,防盗链绝对是当务之急!使用来源判断根本不靠谱,只能防止一些小白站点的盗链,迅雷之类的下载工具完全无效:如果是nginx配置的站点,可以使用secure link来完美解决这个问题,远离迅雷. 以下Nginx的盗链配置,仅用于下载服务器…
日常运维工作中,设置防盗链的需求会经常碰到,这也是优化网站的一个必要措施.今天在此介绍Nginx中设置下载防盗链和图片防盗链的操作~ 一.Nginx中下载防盗链的操作记录对于一些站点上的下载操作,有很多的下载来源不是本站,是迅雷.flashget, 源源不断的带宽,防盗链绝对是当务之急!使用来源判断根本不靠谱,只能防止一些小白站点的盗链,迅雷之类的下载工具完全无效:如果是nginx配置的站点,可以使用secure link来完美解决这个问题,远离迅雷. 以下Nginx的盗链配置,仅用于下载服务器…
访问我的博客 前言 博主目前在一家原创小说网站公司工作,由于站内的作品全部是原创,于是乎不可避免地会被一些盗版网站爬取盗版,对于防盗版一直没有很好的对策,让公司很是苦恼. 最近去一些盗版网站上搜索我们网站作品时,发现他们所用的封面图片的来源是我们网站的地址,即所谓的盗链,这对于我们网站服务器的带宽是一种损失,因此需要采取对应的手段应对. 环境准备 这里我使用两台虚拟机 虚拟机的快速安装可以参考我另外一篇博文 CentOS快速安装 服务器 A:192.168.200.130 服务器 B:192.1…
要实现防盗链,我们就必须先理解盗链的实现原理,提到防盗链的实现原理就不得不从HTTP协议说起,在HTTP协议中,有一个表头字段叫referer,采用URL的格式来表示从哪儿链接到当前的网页或文件.换句话说,通过referer,网站可以检测目标网页访问的来源网页,如果是资源文件,则可以跟踪到显示它的网页地址.有了referer跟踪来源就好办了,这时就可以通过技术手段来进行处理,一旦检测到来源不是本站即进行阻止或者返回指定的页面. Nginx防盗链的配置 1.nginx针对文件类型的防盗链配置方法:…
这里需要使用两台Linux主机(一台充当防盗链服务器,一台充当盗链服务器),下表是它们所使用的操作系统以及IP地址. 两台Linux主机所使用的操作系统以及IP地址 主机名称 操作系统 IP地址 防盗链服务器 CentOS7.5 192.168.5.23 盗链服务器 CentOS6.10 192.168.5.154 两台Linux主机的Nginx采用yum安装,版本都是1.16.1 一.nginx模块ngx_http_referer_module指令简介 nginx中ngx_http_refer…
盗链 网站内有许多的图片地址,或一些我们可以用到的资源,在这种情况下,我可以通过赋值其他图片链接地址,到我自己的平台上,这样相当于盗取了一张图片的链接,那么盗链会有什么危害呢? 当我们盗取一张图片链接放入我们自己的平台时,我们每次访问平台也会连带 链接图片一起访问,要知道我们访问的图片是不在我们自己平台服务调去的资源,而是在获取链接图片的那台服务上边调用的,耗费的自然是它的资源请求,如果我们使用的平台访问量特别大,那会间接的导致盗取的链接服务一起被消耗资源,消耗带宽,所以为了避免这样的事情发生我…
防盗链一般都是流媒体配置 location ~* \.(jpg|jpeg|png|bmg|swf|mp4|mp4|mmf|zip|rar|swf|flv)$ { // 对jpg|jpeg|png|bmg|swf|mp4|mp4|mmf|zip|rar|swf|flv 实行防盗链处理; valid_referers none blocked *.www1.com www1.com; // www1.com 这个请求可以正常访问上面指定文件资源; if ($invalid_referer) { re…
[root@web01 www]# cat /app/server/nginx/conf/vhosts/default.conf server { listen default_server; server_name 192.168.1.24 web01.espressos.cn; root /app/www; index index.php index.html index.htm; location ~* \.(gif|jpg|png|swf|flv)$ { #对gif,jpg,png,sw…
Ps:防盗链的意义就是保证自己的版权,不免网站的流量流失,为他人做嫁衣.下面是网上看到的三种方法: 修改 /usr/local/nginx/conf/nginx.conf 这个配置文件.找到location ~ .*.(gif|jpg|jpeg|png|bmp|swf)${expires 30d;} 修改成如下代码:location ~ .*.(gif|jpg|jpeg|png|bmp|swf)${valid_referers none blocked *.fyunw.com fyunw.com…
盗链是一种损害原有网站合法权益,给原网站所在服务器造成额外负担的非法行为. 盗链的实现原理: 客户端向服务器请求资源时,为了减少网络带宽,提高响应时间,服务器一般不会一次将所有资源完整地传回给客户端.比如在请求一个网页时,首先会传回该网页的文本内容.当客户端浏览器在解析文本的过程中发现有图片存在时,会再次向服务器发起对该图片资源的请求,服务器将请求图片资源再发送给客户端.在这个过程中,如果该服务器上只包含了网页的文本内容,并没有存储相关图片资源,而是将图片资源链接到其他的服务器,这就是形成了盗链…
一.安装Nginx: 1.解决依赖关系 # yum groupinstall "Development Tools" "Server Platform Deveopment" # yum install openssl-devel pcre-devel 2.安装首先添加用户nginx,实现以之运行nginx服务进程: # groupadd -r nginx # useradd -r -g nginx nginx 接着开始编译和安装: # ./configure \…
什么是下载盗链   假设我们是一个B站,有些视频资源是可以提供给用户下载的.这时迅雷等其他下载软件,也提供下载该视频的服务, 但是迅雷很不厚道的,将我们的下载资源提供给他的用户,下载.占用我们的带宽来服务他的用户,这是绝对不可以忍了的.   使用来源判断根本不靠谱,只能防止一些小白站点的盗链,迅雷之类的下载工具完全无效,如果你是 nginx 的话,使用 secure link 完美解决这个问题,远离迅雷.   本文仅用于下载服务器,不适用于图片防盗链.   原理 用户访问 down.php do…
上一篇文章讲了 Nginx 中的变量和运行原理,下面就来说一个主要提供变量并修改变量的值的模块,也就是我们要讲的防盗链模块:referer 模块. 简单有效的防盗链手段 场景 如果做过个人站点的同学,可能会遇到别人盗用自己站点资源链接的情况,这就是盗链.说到盗链就要说一个 HTTP 协议的 头部,referer 头部.当其他网站通过 URL 引用了你的页面,用户在浏览器上点击 URL 时,HTTP 请求的头部会通过 referer 头部将该网站当前页面的 URL 带上,告诉服务器本次请求是由谁发…
一般,我们做好防盗链之后其他网站盗链的本站图片就会全部失效无法显示,但是您如果通过浏览器直接输入图片地址,仍然会显示图片,仍然可以右键图片另存为下载文件!依然可以下载?这样就不是彻底的防盗链了! [root@web01 vhosts]# cat default.conf server { listen default_server; server_name 192.168.1.24 web01.espressos.cn *.qq.com *.baidu.com; root /app/www; i…
http://blog.csdn.net/longjef/article/details/53284108 关于nginx防盗链的方法网上有很多教程,都可以用,但是我发现很多教程并不完整,所做的防盗链并不是真正的彻底的防盗链! 一般,我们做好防盗链之后其他网站盗链的本站图片就会全部失效无法显示,但是您如果通过浏览器直接输入图片地址,仍然会显示图片,仍然可以右键图片另存为下载文件! 依然可以下载?这样就不是彻底的防盗了!那么,nginx应该怎么样彻底地实现真正意义上的防盗链呢? 首先,我们来看下n…
有时候在浏览网页的时候,会遇到某些文件(图片等)无法访问的情况,这是因为图片的所有方做了防盗链机制 了解防盗链之前先了解下http referer这个属性,http referer是请求头中的一部分,当浏览器向web服务器发出请求时,一般会带上这个属性用来表明网页的来源,比如我在qq空间里添加朋友的空间链接,那么当有人点击我空间里的这个链接调到朋友的qq空间时,referer的值就是我空间的url. 防盗链的基本原理就是根据请求头中referer属性得到网页来源,从而实现访问控制. 为什么要实现…
原文:http://www.open-open.com/code/view/1430750263460 location ~* \.(gif|jpg|jpeg|png|ico)$ { valid_referers none blocked www.oschina.net oschina.net; if ($invalid_referer) { rewrite ^/ /daolian.jpg; } access_log off; root /opt/web; expires 5d; break;…
1.一般的防盗链设置: location ~* \.(gif|jpg|png|jpeg)$ { expires 30d; valid_referers none blocke *.julyy.site www..julyy.site  *.baidu.com *.google.com; if ($invalid_referer) { rewrite ^/ http://www.julyy.site/daolian/daolian.jpg; #return 404; } } #其中“gif|jpg…
L75 referer模块 ngx_http_referer_module 默认编译进nginx valid_referers 指令 Syntax: valid_referers none | blocked | server_names | string ...; Default: — Context: server, location 参数值 none 允许缺失referer头部请求访问 block 允许有referer头部请求访问 server_names 如果server_names与本…
一.ngx_http_referer_module(阻挡来源非法的域名请求),配置如下: location ~.*\. (gif|jpg|png|flv|swf|rar|zip)$ { valid_referers none blocked test.com *.test.com; if($valid_referer) { #return 403; rewrite ^/ http://www.test.com/403.jpg; } } 二.HttpAccessKeyMoudule,配置如下: 参…
跨域访问控制 跨域访问 为什么浏览器禁止跨域访问 不安全,容易出现CSRF攻击! 如果黑客控制的网站B在响应头里添加了让客户端去访问网站A的恶意信息,就会出现CSRF攻击 Nginx如何配置跨域访问 add_header语法 Syntax:add_header name value [always]; Default:— Context:http, server, location, if in location 语法解释: add_header name value [always]; nam…
一.Nginx防盗链 配置如下,可以和上面的配置结合起来 location ~* ^.+\.(gif|jpg|png|swf|flv|rar|zip|doc|pdf|gz|bz2|jpeg|bmp|xls)$ { expires 7d; valid_referers none blocked server_names *.test.com ; if ($invalid_referer) { return 403; } access_log off; } 重加载 二.Nginx访问控制 需求:访问…
nginx做反向代理真的非常简单,只需设置location+proxy_pass即可. 防盗链配置有些复杂,需要注意的地方: 在防盗链的location中需要再设置一下proxy_pass(在这里走了一些弯路) 在valid_referers中不要漏写server_names ~表示匹配时忽略大小写 经过实际验证的参考配置如下: server { listen 80; server_name hostname; location / { location ~ .*\.(jpg|gif|bmp)$…
一.控制浏览器缓存 1. 浏览器缓存简介 浏览器缓存遵循HTTP协议定义的缓存机制(如:Expires;Cache-control等). 当浏览器无缓存时,请求响应流程 当浏览器有缓存时,请求响应流程 浏览器缓存校验过期机制 校验是否过期 Cache-Control(max-age).Expires 协议中Etag头信息校验 Etag Last-Modified头信息校验 Last-Modified 浏览器请求流程 2. Nginx控制浏览器缓存配置 Nginx通过添加Cache-Control…