Skip to content

Traefik 代理中间件概览

HTTP 中间件概览

中间件可以附加到路由器服务上,是在请求发送到后端服务器之前(或者在响应发送回客户端之前)对请求进行调整的一种手段。

中间件可以在两个层级附加:

  • 路由器级: 应用于匹配该路由器规则的所有请求,转发到服务之前执行。
  • 服务级: 应用于该服务处理的所有请求,而不管哪个路由器转发的请求。参见服务中间件

当两者都配置时,路由器中间件先执行,然后才是服务中间件。

Traefik 中有多种可用的中间件,有些可以修改请求、修改请求头,有些负责重定向,有些添加认证,等等。

使用相同协议的中间件可以组合到链中以适应各种场景。

关于 Provider 命名空间

请注意配置发现 一节中描述的 Provider 命名空间概念。它也适用于中间件。

可用的 HTTP 中间件

中间件用途领域
AddPrefix添加路径前缀路径修改器
BasicAuth添加 Basic 认证安全、认证
Buffering缓冲请求/响应请求生命周期
Chain组合多个中间件杂项
CircuitBreaker防止调用不健康的服务请求生命周期
Compress压缩响应内容修改器
ContentType处理 Content-Type 自动检测杂项
DigestAuth添加 Digest 认证安全、认证
EncodedCharacters定义请求路径中允许的保留编码字符安全、请求生命周期
Errors定义自定义错误页请求生命周期
ForwardAuth委托身份认证安全、认证
GrpcWeb将 gRPC Web 请求转换为 HTTP/2 gRPC 请求请求
Headers添加/更新请求头安全
IPAllowList限制允许的客户端 IP安全、请求生命周期
InFlightReq限制同时连接数安全、请求生命周期
PassTLSClientCert在请求头中添加客户端证书安全
RateLimit限制调用频率安全、请求生命周期
RedirectScheme基于协议的重定向请求生命周期
RedirectRegex基于正则的重定向请求生命周期
ReplacePath更改请求路径路径修改器
ReplacePathRegex更改请求路径路径修改器
Retry出错时自动重试请求生命周期
StripPrefix去除请求路径前缀路径修改器
StripPrefixRegex去除请求路径前缀路径修改器

社区中间件

请查看插件目录中的社区贡献插件。


在生产环境使用 Traefik OSS?

如果你在工作中使用 Traefik,可以考虑为其添加企业级 API 网关能力或获取 Traefik OSS 的商业支持。

为 Traefik OSS 添加 API 网关能力既快速又无需任何迁移改造。无需推倒重来,所有配置保持不变。可以通过这个短视频 了解实际效果。

基于 MIT 协议发布