网站首页
Java
站长
开源
框架
理论
JS
Linux
DB
服务器
NET
生活
软件
PHP
其他
您的位置:首页 > 软件 > Nginx配置Referer防盗链
Nginx配置Referer防盗链
2022-2-4    3869    1

HTTP Referer是Header的一部分,当浏览器向Web服务器发送请求的时候,一般会带上Referer,告诉服务器我是从哪个页面链接过来的,服务器借此可以获得一些信息用于处理。


server {
	listen       80;
	server_name  localhost;
	access_log  logs/access.log main;
	location ~ .*\.(jpg|gif|png)$ {
		valid_referers none blocked www.javacui.com;
		if ($invalid_referer) {
			return 403;
		}
		root html/image;
	}
	location /image {
		valid_referers none blocked www.javacui.com;
		if ($invalid_referer) {
			return 403;
		}
		root html;
	}
}


如上第一个是针对资源进行控制,第二个是针对目录进行配置。


none代表Header中Referer可以无值,比如URL直接访问图片

blocked代表Header中Referer不为空但是该值被防火墙或者代理伪装过,如不带http://或https://等协议

server_names代表具体的域名或者IP,可以多个


注意:HTTP Referer头信息是可以通过程序来伪装生成的,所以通过Referer信息防盗链并非100%可靠,但是,它能够限制大部分的盗链。

上一篇: SpringBoot集成Curator实现Zookeeper基本操作
下一篇: Nginx解决跨域问题
评论列表:
Java小强
2022-02-04 10:56 回复

nginx配置文件中if后面记得加空格

发表评论:
您的网名:
个人主页:
编辑内容: