Nginx做为静态资源web服务之防盗链

Nginx做为静态资源web服务之防盗链


首先,为何须要防盗链,由于有些资源存在竞争对手的关系,好比淘宝的商品图片,不会轻易的让工具来爬虫爬走收集。可是若是使用防盗链,须要知道上一个访问的资源,而后放入名单中进行判断。那么如何获取上一个访问的资源呢,能够经过http_referers模块来实现。

1.查看 nginx.conf能够查看日志的配置中有下面这一段

因此能够经过看日志来看看 $http_referer 保存的信息是什么了。

2. 配置一个html,html信息以下
<html>
        <head>
                <title>duguxiaobiao</title>
        </head>
        <body style="background-color:red">
                <img src="http://192.168.78.135/1.jpg"/>
        </body>
</html>
3. default.conf文件中信息仍是以下,暂时不修改,再打开日志,等加载后输入网址看效果

4. 输入网址,查看效果


从日志中也能够看到,上一个网址是 test_referer.html文件,下面来配置防盗链

5. 在default.conf文件中添加以下配置

解释一下: valid_referers:表示白名单, none:表示空的来路,好比直接访问的, blocked:表示被防火墙标识过的来路, 后面的ip就是容许的名单。若是不在这些白名单的配置下得来路,都会进入到 403。

6. 使用工具测试,先模拟从百度下发送请求,发现403被拦截
下面改为 本地ip来测试


至此,测试成功。在这里推荐一篇博客 ,详解讲解了 nginx防盗链的使用 nginx防盗链详细解说
相关文章
相关标签/搜索