反向代理到上游
反向代理是 OpenResty Edge 网关的核心功能之一,本文将详细介绍如何在 Edge Admin 中配置反向代理规则。 首先进入 页面规则 页面,在此处添加网关反向代理到上游的页面规则。 点击 新建规则 按钮开始配置。 规则配置中的 Proxy 模块默认处于关闭状态,需要先点击展开该模块。
反向代理是 OpenResty Edge 网关的核心功能之一,本文将详细介绍如何在 Edge Admin 中配置反向代理规则。
配置步骤
1. 进入页面规则配置
首先进入 页面规则 页面,在此处添加网关反向代理到上游的页面规则。

点击 新建规则 按钮开始配置。

2. 启用 Proxy 模块
规则配置中的 Proxy 模块默认处于关闭状态,需要先点击展开该模块。

3. 配置上游服务器
3.1 创建新上游
如果尚未添加过上游,可以选择新建一个上游:

3.2 上游配置参数

上游服务器支持以下配置选项:
基础配置
- 名称:上游的标识名称
- 协议:支持 HTTP 或 HTTPS
- 健康检查:为上游配置主动健康检查机制
高级配置
- 作用代理主机名:将上游域名用作代理主机名
注意:启用此选项时,仅能输入一个以域名作为地址的上游服务器,且代理规则中只能选择一个上游
上游服务器列表
一个上游可以包含多个上游服务器,支持为不同服务器配置权重(按权重分配回源请求量)。
上游服务器地址支持以下格式:
- IP 地址:直接使用 IP 地址
- 域名:网关服务器将使用本地
/etc/resolv.conf配置的 resolver 或全局配置的 DNS resolver 进行解析 - 动态 Host 字段:使用被代理请求的 Host 字段域名(动态地址,与具体请求相关,使用场景较少)
4. 多上游配置与权重分配
4.1 多上游权重机制
系统支持同时使用多个上游,并可为每个上游配置权重。权重分配机制如下:
- 第一层分配:请求首先按照上游间的权重进行分配
- 第二层分配:分配到特定上游后,再按照该上游内部节点间的权重进行分配
4.2 灰度发布示例
例如,可以添加一个灰度上游:

和一个生产上游:

将 10% 的请求量分配到灰度上游,90% 的请求量分配到生产上游:

5. 配置匹配条件
还可以根据请求信息配置不同的回源策略。例如,针对 v2 版本的 API 进行特定配置:

配置完成
按照以上步骤,一个完整的反向代理规则就配置完成了。该规则将根据设定的条件和权重,将请求智能分发到相应的上游服务器。