当前位置: 首页 > 编程笔记 >

Nginx配置防盗链的完整步骤

贺俊材
2023-03-14
本文向大家介绍Nginx配置防盗链的完整步骤,包括了Nginx配置防盗链的完整步骤的使用技巧和注意事项,需要的朋友参考一下

需求:

通常站点,都会想让自己网站的视频和图片,免被盗用,毕竟视频流量,花的都是白花花银子(土豪可以不用考虑)~~.

一、单刀直入,先上nginx配置文件

server {
listen 80;
server_name www.test.com;
root /data/web/;
index index.php index.html;
access_log /data/logs/nginx/biao.madacode.access.log main;

location /{
root /home/data/;
}

error_page 404 /usr/local/nginx/html/404.html;

location ~ .*\.(wma|wmv|asf|mp3|mp4|mmf|zip|rar|jpg|gif|png|swf|flv)$
{
valid_referers none blocked server_names *.test.com http://IP;
if ($invalid_referer) {
return 403;
}
expires 24h;
access_log off;

}
location ~ /\.
{
deny all;
}

}

二、防盗链核心配置文件解释

location ~ .*\.(wma|wmv|asf|mp3|mp4|mmf|zip|rar|jpg|gif|png|swf|flv)$
{
valid_referers none blocked server_names *.test.com http://IP;
if ($invalid_referer) {
return 403;
}
expires 24h;
access_log off;

}

vaild_referers 有效的引用连接,如下,否则就进入$invaild_refere,返回403 forbiden。

1、none

"Referer" 来源头部为空的情况

2、blocked

"Referer"来源头部不为空,但是里面的值被代理或者防火墙删除了,这些值都不以http://或者https://开头.

3、server_names

"Referer"来源头部包含当前的server_names(当前域名)

三、模拟案例测试

1、添加 --referer 模拟引用,看结果直接403.证明上面配置是OK的

[root@test]# curl --referer http://baidu.com -I http://www.test.com/temp/T19254/20190820/video_out_out/1/0011.mp4
HTTP/1.1 403 Forbidden
Server: Tengine
Date: Wed, 21 Aug 2019 09:54:44 GMT
Content-Type: text/html
Content-Length: 639
Connection: keep-alive


总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对小牛知识库的支持。

 类似资料:
  • 1. 什么是盗链? 百度百科的解释如下: 盗链是指服务提供商自己不提供服务的内容,通过技术手段绕过其它有利益的最终用户界面(如广告),直接在自己的网站上向最终用户提供其它服务提供商的服务内容,骗取最终用户的浏览和点击率。受益者不提供资源或提供很少的资源,而真正的服务提供商却得不到任何的收益。 盗链在如今的互联网世界无处不在,盗图,盗视频、盗文章等等,都是通过获取正规网站的图片、视频、文章等的 ur

  • location ~* \.(gif|jpg|png|swf|flv)$ { root html valid_referers none blocked *.uncwd.com; if ($invalid_referer) { rewrite ^/ www.wenjiangs.com #return 404; } } 前面的root可以不要如果你在se

  • 本机测试项目,用php_study建立的两个站点A和B, A: http://a:8888 B: http://b:9999 需要在A上配置防盗链,不让B站点引用A站的图片, 如何配置? 这样配置不管用 求解

  • 本文向大家介绍docker完整配置nginx+php+mysql的方法步骤,包括了docker完整配置nginx+php+mysql的方法步骤的使用技巧和注意事项,需要的朋友参考一下 首先了解一个方法: 使用docker exec进入Docker容器 docker在1.3.X版本之后还提供了一个新的命令exec用于进入容器,这种方式相对更简单一些,下面我们来看一下该命令的使用: 接下来我们使用该命

  • 注意:“网站防盗链”功能需在“应用防护管理”中开启对应的防护(Web防护/Nginx自编译/RASP)才可使用。 盗链是指服务提供商自己不提供服务的内容,通过技术手段绕过其它有利益的最终用户界面(如广告),直接在自己的网站上向最终用户提供其它服务提供商的服务内容,骗取最终用户的浏览和点击率。受益者不提供资源或提供很少的资源,而真正的服务提供商却得不到任何的收益。网防G01通过“网站防盗链”功能更有

  • 题目描述 配置nginx切片视频防盗链后,安卓手机浏览器无法播放,其他浏览器均可播放 题目来源及自己的思路 反向代理配置防盗链 相关代码 location ~ .*.(m3u8|ts)$ } 你期待的结果是什么?实际看到的错误信息又是什么? 有可能是安卓浏览器加载 xxx.ts的视频文件,没有携带referer 安卓手机浏览器可以正常播放