1. valid_referers 指令的作用 valid_referers 指令用于在 Nginx 配置中定义合法的 Referer 来源。Nginx 会检查每个请求的 Referer 字段,如果请求的 Referer 来源不在指定的合法来源列表中,Nginx 将根据配置采取相应的操作,如返回 403 错误或执行其他操作。这有助于防止盗链和跨站请求伪造(CSRF)攻击。
方法1:使用valid_referers指令 Nginx的valid_referers指令允许您定义允许的引用来源,从而限制资源的访问。以下是一个示例配置: 代码语言:javascript 代码运行次数:0 AI代码解释 server{listen80;server_name yourwebsite.com;location/images{valid_referers none blocked yourwebsite.com;if($invalid_referer){return403;...
nginx valid_referers 无效 ngx_http_rewrite_module 模块用于通过 PCRE 正则表达式改变请求 URI,返回重定向并可以有条件地选择配置。 break、if、return、rewrite 以及 set 指令的处理顺序如下: 首先按顺序执行在 server 块中指定的该模块的指令 然后循环: 根据请求 URI 搜索 location 该模块的指令在 location 内指定...
location /public-content/ { valid_referersnone; } 原理: referer参数的原理是通过Nginx的valid_referers指令来指定合法的Referer来源。Nginx会检查每个请求的Referer字段,如果请求的Referer来源不在指定的合法来源列表中,Nginx将根据配置采取相应的操作,如返回403错误或执行其他操作。 需要注意的是,Referer字段是由客户端...
valid_referers 指令 代码语言:javascript 代码运行次数:0 运行 AI代码解释 语法:valid_referers none|blocked|server_names string...;默认值:no使用字段:server,location功能:此指令在 referer头的基础上为 $invalid_referer 变量赋值,可以实现简单的防盗链功能。
Nginx 提供了valid_referers参数用于检查url中refer参数的状态,首先看下官方配置: Syntax: valid_referers none | blocked | server_names | string ...; Default: — Context: server, location 1 2 3 能看到valid_referers总共有4种值可以使用,none、blocked、server_names、string。
因此nginx的valid_referers指令就是指定哪些Referer是合法有效的头,只有有效的Referer才会访问到资源,否则会添加一个内部的变量$invalid_referer = 1。 server_names是一个特殊的属性值,代表匹配server_name指令的所有参数。而strings是你自己自定义的其他主机头或地址,范例官方文档也给你了。
valid_referers none blocked server_name .*.aaa.com ; if ($invalid_referer) { rewrite ^/ http://aaa.com/bmiddle/403.jpg; # return 403; } access_log off; } ---检查配置并reload重新加载配置 [root@localhost bmiddle]# /usr/local/nginx/sbin/nginx -t nginx: the configuration...
valid_referers 172.16.225.111 www.testfront.com; if ($invalid_referer) { return 403; } root /www/static; } 此时再访问www.testbackend.com去引用www.testfront.com的资源 就不能访问了 3. 防盗链的 具体配置 从上面可以看出, 通过配置 valid_referers 后面添加校验的域名和ip , nginx 会自动进行 http...
valid_referers 语法:valid_referers [none|blocked|server_names] ... 默认值:none 使用字段:server, location 这个指令在referer头的基础上为 $invalid_referer 变量赋值,其值为0或1。 可以使用这个指令来实现防盗链功能,如果valid_referers列表中没有Referer头的值, $invalid_referer将被设置为1(参照下列)。