怎么配置valid_referers
时间: 2024-03-12 20:45:20 浏览: 128
要使用valid_referers指令来防止盗链,需要在nginx的配置文件中进行相应的配置。下面是一个简单的配置示例:
```
location /protected/ {
valid_referers none blocked example.com *.example.com;
if ($invalid_referer) {
return 403;
}
}
```
在这个配置中,我们指定了/protected/目录下的资源需要进行防盗链处理。valid_referers指令指定了哪些来源可以访问这些资源,这里指定了来源为none(即直接访问)、blocked(即被阻止的请求)、example.com(指定域名)和*.example.com(指定域名的子域名)。如果请求的来源不在指定的列表中,则会被视为盗链请求,nginx会返回403 Forbidden。
需要注意的是,在使用valid_referers指令时,建议同时使用反向代理和SSL加密等技术来提高安全性。
相关问题
ngnix valid_referers 怎么配置
`valid_referers` 是 Nginx 的一个指令,用于限制请求来源,只有符合指定来源的请求才能访问指定的资源。在 Nginx 配置文件中,可以使用如下语法来配置 `valid_referers`:
```nginx
location / {
# 允许来自指定来源的请求访问
valid_referers 119.3.223.111;
# 如果请求来源不在指定范围内,则返回 403 错误
if ($invalid_referer) {
return 403;
}
}
```
上面的配置中, `valid_referers` 指令指定了允许访问的请求来源,这里只允许来自 IP 地址为 119.3.223.111 的请求访问。如果请求来源不在指定范围内,则会返回 403 错误。
你也可以使用通配符来指定多个 IP 地址,例如:
```nginx
valid_referers 119.3.223.111 192.168.1.0/24 *.example.com;
```
上面的配置中, `valid_referers` 指定了 3 个请求来源,分别是 IP 地址为 119.3.223.111、IP 地址在 192.168.1.0/24 网段内、域名为 example.com。这样,只有来自这些请求来源的请求才能访问指定的资源。
需要注意的是,`valid_referers` 只能限制 HTTP 请求的来源,对于 HTTPS 请求来说,由于使用了 SSL/TLS 加密,请求来源是无法被伪造的,因此 `valid_referers` 对 HTTPS 请求无效。如果需要限制 HTTPS 请求来源,需要使用其他方法,例如设置 SSL/TLS 证书验证等。
nginx的valid_referers指令怎么配置
nginx的valid_referers指令可以在nginx的http、server、location等块中进行配置。下面是一个在location块中配置valid_referers指令的示例:
```
location / {
valid_referers none blocked example.com;
if ($invalid_referer) {
return 403;
}
}
```
在以上示例中,我们允许example.com访问该location下的资源,其他来源将被拒绝。如果请求的来源不在允许范围内,则会返回403 Forbidden错误。
valid_referers指令支持多个参数,包括none、blocked、server_names、string等。下面是各个参数的含义:
- none:表示不允许任何来源访问。
- blocked:表示禁止指定来源访问。
- server_names:表示只允许指定域名或IP访问。
- string:表示允许符合指定字符串模式的来源访问。
如果需要设置多个参数,可以使用空格分隔。例如:
```
valid_referers none blocked example.com *.example.com;
```
在以上示例中,我们允许example.com和所有以.example.com结尾的域名访问资源,其他来源将被拒绝。
阅读全文