/Referer Plugin

Referer Plugin

4
v0.1.2

Referer 防盗链

通过 referer 进行防盗链保护

配置举例

# Static configuration
experimental:
plugins:
referer:
moduleName: github.com/moonlightwatch/referer
version: v0.1.2
# Dynamic configuration
http:
routers:
my-router:
rule: host(`demo.localhost`)
service: service-foo
entryPoints:
- web
middlewares:
- my-plugin
services:
service-foo:
loadBalancer:
servers:
- url: http://127.0.0.1:5000
middlewares:
my-plugin:
plugin:
referer:
Type: white
EmptyReferer: true
Domains:
- "*.baidu.com"
- "google.com"

说明

Type 字段,可以选填:white 或者 black,分别表示白名单模式和黑名单模式。

白名单模式下:

  1. 匹配 Domains 所载域名的 referer 参数,可以进行访问。
  2. EmptyReferertrue 则允许 referer 为空的请求进行访问。否则,不允许 referer 为空的请求进行访问。

黑名单模式下:

  1. 匹配 Domains 所载域名的 referer 参数,拒绝访问。
  2. EmptyReferertrue 则拒绝 referer 为空的请求进行访问。否则,允许 referer 为空的请求进行访问。

Domains 字段,是一个列表,可以填写域名或者以 * 为通配符的子域名。