配置nginx防止被盗链,提高资源利用率

简介: 配置nginx防止被盗链,提高资源利用率

2016年7月29日
nginx访问日志报大量这种,经查看发现都是搜狗360QQ的图片盗链
49.84.236.135 - - [29/Jul/2016:11:35:58 +0800] "GET/upload/2015_06/forum.php HTTP/1.1" 302 160 "http://pic.*.com/d?query=%E5%A4%8F%E5%AD%A3%E5%A4%A7%E9%94%85%E8%8F%9C%E8%8F%9C%E8%B0%B1&page=1&did=6&st=255&mode=255&phu=http%3A%2F%2Fimages.meishij.net%2Fp%2F20111001%2F16eebce0733b97334d2ef049b79b0209.jpg&p=40230500""Mozilla/5.0 (Windows NT 5.1) AppleWebKit/537.36 (KHTML, like Gecko)Chrome/47.0.2526.80 Safari/537.36 Core/1.47.640.400QQBrowser/9.4.8309.400" "-"^C
什么是盗链?
盗链是指服务提供商自己不提供服务的内容,通过技术手段绕过其它有利益的最终用户界面(如广告),直接在自己的网站上向最终用户提供其它服务提供商的服务内容,骗取最终用户的浏览和点击率。受益者不提供资源或提供很少的资源,而真正的服务提供商却得不到任何的收益。
302状态码
302重定向又称之为302代表暂时性转移(Temporarily Moved ),英文名称:302 redirect。 也被认为是暂时重定向(temporary redirect),一条对网站浏览器的指令来显示浏览器被要求显示的不同的URL,当一个网页经历过短期的URL的变化时使用。一个暂时重定向是一种服务器端的重定向,能够被搜索引擎蜘蛛正确地处理。
如何确认自己被盗链了呢?
首先查看状态码是302还是200,还是别的
你可以用tailf实时查看,也可以用AWK来统计一天的。
然后看这个http://pic..com,这是*网站图片的网址

我的这条记录大概意思就是,**盗链我服务器中的图片,造成资源的浪费。

下面是如何防止被盗链,在nginx.conf中server中添加
我的都是图片多,所以类型选择gif|jpg|png

    location ~* \.(gif|jpg|png)${
        root   /opt/****;
        valid_referers   *.****.net ****.net;
        if ($invalid_referer) {
        return 403;
    }
    }

代码解释
location ~* .根目录下所有文件 (gif|jpg|png)要屏蔽的文件类型${
valid_referers ..net 所有的2级域名 *.net; 主域名

return 403; 你想设定的返回的值
或者可以设置为自定义的图rewrite ^/http://www.*.com/retrun.html;

相关文章
|
2天前
|
缓存 前端开发 JavaScript
终极 Nginx 配置指南(全网最详细)
本文详细介绍了Nginx配置文件`nginx.conf`的基本结构及其优化方法。首先通过删除注释简化了原始配置,使其更易理解。接着,文章将`nginx.conf`分为全局块、events块和http块三部分进行详细解析,帮助读者更好地掌握其功能与配置。此外,还介绍了如何通过简单修改实现网站上线,并提供了Nginx的优化技巧,包括解决前端History模式下的404问题、配置反向代理、开启gzip压缩、设置维护页面、在同一IP上部署多个网站以及实现动静分离等。最后,附上了Nginx的基础命令,如安装、启动、重启和关闭等操作,方便读者实践应用。
142 77
终极 Nginx 配置指南(全网最详细)
|
14天前
|
应用服务中间件 nginx
一文搞定Nginx配置RTMP!
一文搞定Nginx配置RTMP!
51 3
|
14天前
|
Ubuntu 应用服务中间件 数据库
Nginx配置:阻止非国内IP地址访问的设置方法
此外,出于用户隐私和法律合规性的考虑,应慎重考虑阻止特定国家或地区IP地址的决策。在某些情况下,这可能被视为歧视性或违反当地法律。
32 2
|
29天前
|
Ubuntu 应用服务中间件 Linux
在Linux中,如何配置Web服务器(如Apache或Nginx)?
在Linux中,如何配置Web服务器(如Apache或Nginx)?
|
30天前
|
缓存 负载均衡 应用服务中间件
【揭秘】nginx代理配置全攻略:从零到精通,一文带你玩转高效网络代理的秘密武器!
【8月更文挑战第22天】nginx是一款高性能的HTTP与反向代理服务器,支持代理服务、负载均衡及缓存等功能,有助于提升网站响应速度和安全性。首先需确保已安装nginx,可通过包管理器进行安装。安装后启动并确认nginx运行状态。接着编辑配置文件(通常位于`/etc/nginx/nginx.conf`),设置代理转发规则,例如指定目标服务器地址和请求头信息。配置完成后测试有效性并重新加载nginx以应用更改。可以通过部署简易HTTP服务器验证代理功能是否正常工作。此外,还可以通过扩展配置文件实现更复杂的代理需求,如基于路径的代理和SSL加密等。
183 2
|
1月前
|
缓存 负载均衡 应用服务中间件
如何配置 NGINX 反向代理
【8月更文挑战第21天】
137 0
如何配置 NGINX 反向代理
|
27天前
|
应用服务中间件 Linux PHP
【Azure 应用服务】App Service For Linux 环境中,如何修改 Nginx 配置中 server_name的默认值 example.com
【Azure 应用服务】App Service For Linux 环境中,如何修改 Nginx 配置中 server_name的默认值 example.com
|
28天前
|
应用服务中间件 Linux nginx
【Azure 应用服务】App Service For Container 配置Nginx,设置/home/site/wwwroot/目录为启动目录,并配置反向代理
【Azure 应用服务】App Service For Container 配置Nginx,设置/home/site/wwwroot/目录为启动目录,并配置反向代理
|
29天前
|
安全 应用服务中间件 网络安全
Nginx要怎么配置才算安全
Nginx要怎么配置才算安全
36 0
|
29天前
|
应用服务中间件 Linux 网络安全
在Linux中,如何配置Apache或Nginx Web服务器?
在Linux中,如何配置Apache或Nginx Web服务器?