Appearance
创建与修改服务
访问服务用于发布网站和 API,按域名识别业务入口,再将请求转发给后端。本页先完成一个可用入口,再说明如何修改和维护;按路径分流、多目标转发和跳转见路由、负载均衡与重定向。非 Web 业务使用端口转发。
操作前准备
- 已完成安装部署,账号具有访问服务管理权限。
- 后端应用已经运行,HiHTTPS 能访问其实际地址和端口。不要把后端只监听的
127.0.0.1当作其他主机可访问的地址。 - 已准备业务域名,将其解析到客户端可达的 HiHTTPS 入口;如有 CDN、负载均衡或 NAT,同时核对实际转发路径。
- 防火墙、安全组和上游网络设备已按业务范围放行入口端口。默认交付采用 host 网络,不需要添加 Docker 端口映射。
- 使用 HTTPS 前,先申请或导入覆盖全部业务域名的有效证书与配套私钥;TLS/TLCP 选择见服务 HTTPS 配置。
首次发布也可以先按配置第一个 HTTPS 服务走通最短流程,再回到本页了解其他字段。
查找和检查访问服务
展开左侧 访问服务,进入同名子菜单。列表展示业务域名、后端服务地址、入口端口、关联证书算法、访问控制规则和禁用状态。
- 按域名、后端服务地址或端口填写条件,点击 查询;多个条件用于缩小范围,点击 重置 清空条件。
- 找到目标服务后核对域名和入口端口,不要仅凭相同后端地址判断是同一个网站。
- 点击操作列的 证书(n) 查看关联的 TLS / TLCP 证书信息,按需进入订单详情;关联数量不代表证书已经用于线上连接。
- 需要改配置时点击 编辑,先记录原配置及引用的访问控制和证书。
列表中的 禁用 开关开启表示停用服务,不是启用。恢复服务后仍需检查实际业务响应。
新建访问服务
- 进入
访问服务 -> 访问服务,点击 添加访问服务。 - 在
详细内容中填写域名、选择入口协议、填写入口端口。 - 在
路由规则中,将根路径/的动作类型设为 转发,填写后端完整地址,如http://192.168.8.223:8080。 - 使用 HTTPS 时,在
证书配置中选择覆盖域名且材料齐全的证书。 - 普通代理不需要填写
高级中的自定义配置。点击 保存,确认没有配置测试或加载错误、服务未被禁用,再从客户端验收。
域名与端口冲突
相同域名不能在相同入口端口上重复创建,已禁用但未删除的服务也占用该组合;不同入口端口可以使用同一域名。域名大小写和前后空格不能用来区分两个服务。
同一服务内不要同时填写匹配范围重叠的域名,例如 api.example.com 和 *.example.com。自定义端口还需避开 Stream、其他进程、管理端口与系统保留端口。
按页签填写配置
表单默认包含 详细内容、路由规则 和 高级;入口选择 HTTPS 后才显示 证书配置。先完成基础转发,再逐项开启附加能力,便于定位异常。
详细内容:域名、入口与代理选项
| 字段 | 如何填写 | 注意事项 |
|---|---|---|
| 域名 | 例如 app.example.com,多个域名用英文逗号或空格分隔 | 不填协议、端口或路径;HTTPS 证书须覆盖所填域名 |
| 入口协议与端口 | 选择 HTTP 或 HTTPS,并填写端口,例如 HTTPS / 443 | 这是客户端连接 HiHTTPS 的端口,不是后端端口 |
| 缓存资源 | 在 高级设置 -> 代理选项 中按需启用 | 开启后检查静态资源更新,不假定所有动态接口都能安全缓存 |
| 阻止常见攻击 | 按需启用内置基础防护规则 | 不能替代完整 Web 应用防火墙;需检查业务是否被误拦截 |
| 支持 WebSockets | 后端使用 WebSocket 长连接时启用 | 用实际客户端验证连接升级和消息收发 |
| 访问控制 | 选择已创建的规则;不限制时使用 公开规则 | 先创建业务访问控制规则,保存服务后做允许和拒绝测试 |

路由规则、证书配置与高级
- 路由规则:根路径
/负责兜底。转发目标使用后端真实协议、主机与端口;需要新增路径、权重或跳转时,查看路由配置。 - 证书配置:仅在 HTTPS 入口出现。至少关联一类可用证书,按客户端需要选择 TLS 或 TLCP;协议规则、HTTP/2 和 HSTS 见服务 HTTPS 配置。
- 高级:普通场景留空。确需自定义 Nginx 配置时,先在测试服务验证,不能将语法校验通过视为业务正确,见自定义配置。
配置示例
以下示例可独立使用,请替换全部域名和 IP。192.168.8.10 是 HiHTTPS,192.168.8.223 是后端。示例内网 IP 仅适用于能够路由到该地址的客户端;公网业务改用实际公网入口。
curl --resolve 临时指定此次请求的入口地址,仍保留域名用于 HTTP 请求和 TLS 校验,适合 DNS 切换前验证;它不会修改正式 DNS。
示例:HTTP 反向代理
场景:通过 http://web.example.com 访问内网网站 http://192.168.8.223:8080,适合受控内网或临时联调。
| 配置位置 | 配置项 | 值 |
|---|---|---|
| 详细内容 | 域名 | web.example.com |
| 详细内容 | 入口协议与端口 | HTTP,80 |
| 路由规则 | 路径、动作类型 | /,转发 |
| 路由规则 | 转发目标 | http://192.168.8.223:8080 |
保存后从客户端检查:
bash
curl -i --resolve web.example.com:80:192.168.8.10 http://web.example.com/应返回后端业务响应,不是 HiHTTPS 管理页面。HTTP 不加密传输,面向公网或传输敏感信息时请使用 HTTPS。
示例:HTTPS 反向代理
场景:后端提供 HTTP,由 HiHTTPS 对外提供 https://app.example.com。
| 配置位置 | 配置项 | 值 |
|---|---|---|
| 详细内容 | 域名 | app.example.com |
| 详细内容 | 入口协议与端口 | HTTPS,443 |
| 路由规则 | 路径、动作类型 | /,转发 |
| 路由规则 | 转发目标 | http://192.168.8.223:8080 |
| 证书配置 | TLS 证书 | 覆盖 app.example.com 的有效证书 |
保存后从客户端检查:
bash
curl -i --resolve app.example.com:443:192.168.8.10 https://app.example.com/应通过证书校验并返回后端业务响应。私有 CA 证书需先建立客户端信任,或用 --cacert /path/to/ca.pem 指定 CA;不要用 -k 代替证书验收。
入口协议与后端协议相互独立
本例由 HiHTTPS 终止 TLS,客户端到 HiHTTPS 使用 HTTPS,后端仍使用 HTTP,应在受信内网中使用。若后端链路也需加密,填写后端实际提供的 HTTPS 地址和端口。
选择 HTTPS 只监听该 HTTPS 入口,不会额外启用 HTTP 入口。需要 http:// 强制跳转到 https:// 时,在 证书配置 -> 高级设置 -> SSL 选项 中开启强制 HTTPS,见服务 HTTPS 配置。
示例:自定义 HTTPS 端口
场景:保留已有的 https://app.example.com,使用 https://app.example.com:8443 发布另一项 Web 服务。
新增一个访问服务:
| 配置位置 | 配置项 | 值 |
|---|---|---|
| 详细内容 | 域名 | app.example.com |
| 详细内容 | 入口协议与端口 | HTTPS,8443 |
| 路由规则 | 路径、动作类型 | /,转发 |
| 路由规则 | 转发目标 | http://192.168.8.223:9000 |
| 证书配置 | TLS 证书 | 覆盖该域名的有效证书,可复用 443 服务证书 |
两个入口端口不同,可以使用同一域名。证书校验域名,不需为 8443 单独申请。确认没有监听冲突,在服务器及上游设备放通 8443/tcp 后检查:
bash
curl -i --resolve app.example.com:8443:192.168.8.10 https://app.example.com:8443/应返回 9000 后端的响应。省略 :8443 会访问默认 443;不要使用管理端口 81 或内部保留端口,见端口规划。
高级:自定义配置
普通反向代理、路径分流和多目标转发优先使用表单。熟悉 Nginx 的管理员确有特殊需求时,在 高级 -> 自定义配置 中填写当前服务允许的片段。
自定义配置仅支持填写 server 与 location 层之间的配置内容,保存时进行语法校验,校验通过后应用到当前访问服务。不要粘贴完整 nginx.conf、http 块或完整 server 块,也不要重复定义表单已生成的监听与路由。
- 记录原配置,先在测试服务验证需要的指令。
- 填写片段后保存,查看语法校验和加载结果。
- 保存失败时按具体错误修正,不去运行目录手工覆盖系统生成文件。
- 保存成功后,重新检查受影响路径、TLS 和访问控制。语法正确不代表业务符合预期。
编辑、停用与删除
- 编辑:记录域名、端口、后端、证书和访问控制,保存后按修改场景重新验收。先检查保存错误和实际入口,不连续重复提交。
- 停用:开启列表的
禁用开关前确认中断范围;停用仍占用原域名与端口组合。恢复时关闭开关并验证。 - 删除:核对服务和关联资源,再在弹窗确认。删除只移除入口配置,不代表后端应用、DNS 或外部防火墙也被删除。
- 查看证书:从服务操作列查看关联版本,再与真实客户端收到的证书比对,见证书部署检查。
完成检查
- 使用实际业务域名和入口端口访问,响应来自预期后端;不能仅凭 HTTP
200判断业务正常。 - HTTPS 校验通过,入口实际证书的域名、有效期和版本正确。
- 启用访问控制后,允许与拒绝场景均符合预期;WebSocket 等附加能力使用对应客户端验收。
- 正式 DNS 生效后再次访问,A/AAAA、CDN 或前置代理没有把请求送到其他入口。
- 重要变更已记录原配置和影响范围;停用、删除前已确认业务安排。
常见问题与下一步
- 域名或端口冲突:检查禁用但未删除的服务、重叠域名、Stream 及其他进程监听,不用大小写或空格绕过。
- 返回 502 或超时:先区分是否到达入口,再检查后端真实协议、地址、监听与网络,见代理故障排查。
- 证书未更新:检查实际绑定、部署结果与访问链路,见将证书部署到服务。
- 需要分流或负载分担:进入路由、负载均衡与重定向,不要通过重复建相同域名端口的服务实现。
- 服务稳定后:配置业务访问控制,并准备系统加密备份。
