Rumah > Operasi dan penyelenggaraan > Nginx > Bagaimana untuk mengkonfigurasi kaedah anti-hotlinking Nginx

Bagaimana untuk mengkonfigurasi kaedah anti-hotlinking Nginx

PHPz
Lepaskan: 2023-05-15 13:28:11
ke hadapan
1586 orang telah melayarinya

需求:

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

一、单刀直入,先上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;
}

}
Salin selepas log masuk

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

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;

}
Salin selepas log masuk

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
Salin selepas log masuk

Bagaimana untuk mengkonfigurasi kaedah anti-hotlinking Nginx

Atas ialah kandungan terperinci Bagaimana untuk mengkonfigurasi kaedah anti-hotlinking Nginx. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:yisu.com
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan