Files
OpenFlare/docs/guide/proxy-config.md
T
2026-06-05 11:12:06 +08:00

5.1 KiB
Raw Blame History

新建反代配置

你会学到:如何一步一步在 OpenFlare 中从零新建并发布一个反向代理网站配置。本指南将指导你如何完成证书导入与申请、源站定义、路由规则配置、版本发布以及连通性验证。


推荐操作流程

在网关控制面中,建议遵循以下步骤新增反代规则:

  [ 步骤 1. 证书管理 ] ──► [ 步骤 2. 源站定义 (可选) ] ──► [ 步骤 3. 新增网站配置 ]
                                                                   │
  [ 步骤 5. 验证访问 ] ◄── [ 步骤 4. 发布与激活版本 ] ◄───────────────┘

第一步:证书准备(导入与申请)

在使用 HTTPS 安全加密流量前,你需要先配置对应的 TLS 证书。OpenFlare 支持以下两种证书获取方式:

1. 手动导入已有证书

如果你已经有第三方的证书(如腾讯云、阿里云申请的免费/收费证书,或者自签证书):

  1. 导航至左侧菜单 「证书管理」,点击 「导入证书」。
  2. 填入证书名称(如 my-domain-cert)。
  3. 复制并粘贴你的 证书内容 (PEM 格式公钥) 以及 证书私钥 (KEY 格式),点击保存。

2. 通过 ACME 协议自动申请

OpenFlare 集成了 ACME 客户端,支持自动向 Let's Encrypt 申请并到期续签证书:

  1. 添加 ACME 账户:进入「证书管理」->「ACME 账户」->「创建账户」,填入你的联系邮箱。
  2. 添加 DNS 账户 (用于 DNS-01 验证):进入「证书管理」->「DNS 账户」->「创建账户」,选择你的 DNS 托管商(当前仅 Cloudflare)并填入 API Token 凭证。
  3. 申请证书:在「证书管理」中点击「申请证书」:
    • 选择配置好的 ACME 账户和 DNS 账户。
    • 输入需要托管证书的域名(支持通配符,如 *.example.com)。
    • 点击申请,系统将自动配置 DNS 挑战码并向 CA 申请证书,且会在到期前 30 天自动触发续期。

第二步:准备上游源站(可选)

源站(Origin)代表被代理的后端真实服务地址。虽然在新建网站时可以直接填写 IP,但推荐先在源站库中进行注册,以便后续复用与维护:

  1. 进入左侧导航 「源站管理」,点击 「创建源站」。
  2. 填写源站名称(如 production-api)。
  3. 填入合法的上游地址(如 http://10.0.0.10:8080),点击保存。

第三步:新建网站配置

证书和源站就绪后,即可创建核心网站代理路由:

  1. 进入左侧导航 「网站配置」,点击 「创建网站」。
  2. 填写网站基本配置:
    • 网站名称:业务唯一标识(如 app-portal)。
    • 域名 (Domains):输入该站点绑定的域名列表。第一项将自动视为主域名。
  3. 配置上游源站(Upstream):
    • 源站类型:选择「标准反代」。
    • 源站地址:从下拉框中选择第二步创建的源站;或者勾选手动输入并填入 http://10.0.0.20:9000。
  4. 绑定证书启用 HTTPS:
    • 在域名列表中,点击域名旁边的配置按钮或 HTTPS 切换开关。
    • 勾选「启用 HTTPS」,并从证书下拉列表中选择第一步准备好的证书。
    • 注意:未绑定证书的域名只会保留 80 端口 HTTP 服务,不会被写入 443 端口代理中。
  5. 点击保存创建配置。

第四步:发布并生效配置

你在管理端新增的网站配置仅保存在 Server 数据库中,不会立即生效。必须生成配置版本快照并分发到 Agent 边缘节点:

  1. 点击控制面板右上角的 「配置预览」 按钮。
  2. 检查配置文件的 Diff 差异,确认你刚刚新增的 server 块以及证书绑定规则无误。
  3. 点击 「发布并激活」 按钮。
  4. Agent 落地机制:
    • 数据面的 Agent 节点在心跳中发现激活的版本 Checksum 变更,会自动拉取完整的 OpenResty 配置文件和证书包到本地。
    • 自动在本地执行配置校验(类似于 openresty -t),确认无语法错误后,执行平滑重载(reload)。
    • 如果重载或校验失败,Agent 会安全阻断并回滚至上一稳定版本,保证节点高可用。

第五步:连通性与回滚验证

1. 验证访问

你可以通过以下方式验证新配置是否生效:

  • 浏览器访问:直接在浏览器输入 https://your-domain.com 查看是否成功代理后端。
  • 命令行验证(推荐):使用 curl 探测:
    curl -I https://your-domain.com
    
  • 绕过 DNS 校验:若你的域名尚未正式解析,可以临时指定 Host 请求头请求 Agent 节点物理 IP:
    curl -I -H "Host: your-domain.com" https://AGENT_NODE_IP --insecure
    

2. 一键秒级回滚

如果发布的新配置导致了线上业务异常:

  1. 导航至左侧 「配置版本」 菜单。
  2. 在历史列表中找到发布前的上一个稳定版本。
  3. 点击 「激活此版本」。
  4. 所有在线 Agent 节点将在秒级自动重载回历史配置,实现秒级避险。