Plugin
Plugin
配置可直接绑定在 Route
上,也可以被绑定在 Service
或 上。而对于同一
个插件的配置,只能有一份是有效的,配置选择优先级总是 Consumer
> Route
> Service
。
在 conf/config.yaml
中,可以声明本地 APISIX 节点都支持哪些插件。这是个白名单机制,不在该
白名单的插件配置,都将会被自动忽略。这个特性可用于临时关闭或打开特定插件,应对突发情况非常有效。
如果你想在现有插件的基础上新增插件,注意需要拷贝 的插件节点内容到 conf/config.yaml
的插件节点中。
插件的配置可以被直接绑定在指定 Route 中,也可以被绑定在 Service 中,不过 Route 中的插件配置 优先级更高。
插件配置作为 Route 或 Service 的一部分提交的,放到 plugins
下。它内部是使用插件
名字作为哈希的 key 来保存不同插件的配置项。
并不是所有插件都有具体配置项,比如 prometheus
下是没有任何具体配置项,这时候用一个空的对象
标识即可。
如果一个请求因为某个插件而被拒绝,会有类似这样的 warn 日志:ip-restriction exits with http status code 403
。
只需要通过 admin API 发送一个 HTTP 请求即可:
注意:如果你已经在路由规则里配置了某个插件(比如在 的 plugins
字段里面添加了它),然后
禁用了该插件,在执行路由规则的时候会跳过这个插件。
stand-alone 模式下的热加载
参考 文档里关于配置插件的内容。