快速上手
从初始化控制台到首个网站经边缘节点提供 HTTP 与 HTTPS 服务。
流程
- 完成初始化向导:创建唯一的账户与默认集群。
- 接入节点:在控制台生成安装命令,在节点主机上执行;节点注册后经 mTLS 连接节点通道。
- 新建网站:填写域名、源站与缓存设置,集群发布新的配置版本。
- 配置 DNS:在权威 DNS 中把网站域名指向网站 域名 页签列出的边缘地址或 CNAME 目标,等待记录生效。
- 启用 HTTPS:在网站的 HTTPS 页签点击「启用 HTTPS」,证书签发后自动启用,见 HTTPS 与证书。
- 验证:网站 概览 页签的 上线检查 全部通过,用 curl 检查回源与缓存。
节点安装、DNS 生效与证书签发各需等待,耗时取决于网络与服务商。
前提
| 项目 | 要求 |
|---|---|
| 控制台 | 已部署,浏览器可访问 EDGEWEIR_PUBLIC_URL,见 部署概览 |
| 节点主机 | Linux(systemd),amd64 / arm64;可访问 EDGEWEIR_PUBLIC_URL 与节点通道(默认 TCP 8443);有 sudo 权限的账户 |
| 节点入站端口 | TCP 80;启用 HTTPS 后另需 TCP 443 |
| 域名 | 可修改其权威 DNS 记录 |
| 源站 | 节点可访问;地址不在特殊用途地址段(内网、回环等),或已加入 源站地址允许清单 |
1. 完成初始化向导
-
从控制台日志读取 setup token。Docker Compose 部署:
控制台主机 docker compose logs console | grep setupToken日志行为 JSON,
setupToken字段为 token(ews_开头),url字段为初始化页地址。未初始化的控制台每次启动打印同一个 token。其他部署方式的日志位置见 Docker Compose 与 宝塔面板 / aaPanel。 -
浏览器打开
EDGEWEIR_PUBLIC_URL。未初始化的控制台跳转到/setup(创建账户)。 -
填写表单,点击 完成。
字段 说明 初始化令牌 第 1 步读取的 setup token 姓名 1–100 字符 邮箱 登录邮箱 密码 12–128 字符 -
验证:控制台自动登录,打开 集群与节点 与集群
default的 添加节点 对话框(下一步);系统设置 → 系统信息 的 初始化令牌 显示 已于 {时间} 使用。
初始化创建的对象:
| 对象 | 值 |
|---|---|
| 账户 | 表单中的账户,也是控制台唯一的账户;登录方式见 账户与登录 |
| 集群 | default,含默认节点组 default,发布配置版本 #1 |
| setup token | 作废;此后 /setup 跳转到登录页 |
2. 接入节点
-
打开 集群与节点,选择集群
default,点击 添加节点(初始化后已打开;没有节点时侧边栏顶部的按钮也是 添加节点)。对话框立即显示 安装命令:默认节点组default,有效期 1 小时。 -
可选:打开 选项 修改下列字段,点击 重新生成。
字段 说明 节点名称 可选,最多 64 字符 节点组 默认为集群的默认节点组;集群有多个节点组时显示 有效期 15 分钟、1 小时(默认)或 24 小时 -
复制 安装命令(仅显示一次),在节点主机上执行。命令下方的提醒与节点通道连接检查指出节点可能连不上的地址,见 接入节点。命令格式:
节点主机 export EDGEWEIR_TOKEN='ewt_…' curl -fsSL https://console.example.com/install.sh | sudo --preserve-env=EDGEWEIR_TOKEN bash -s -- --server https://console.example.com:8443 --ca-sha256 <CA 指纹> -
验证:对话框的 注册进度 依次完成;集群与节点 的节点表出现该节点,状态 为 在线,已应用版本 旁显示 已同步。
token 单次有效。安装脚本的校验步骤、下载镜像与失败处理见 接入节点。
3. 新建网站
-
打开 网站,点击 新建网站。
-
填写表单。
字段 默认值 说明 名称 第一个域名 最多 100 字符 域名 无 每行一个或以逗号分隔;泛域名写作 *.example.com;1–50 个源站地址 无 IP 或主机名。粘贴 URL( https://origin.example.com:8443/app)或主机:端口时,端口与回源协议填入各自的字段端口 80(HTTP)/ 443(HTTPS) 源站端口 回源协议 HTTP HTTP 或 HTTPS 回源 Host 跟随请求 发往源站的 Host缓存 开启 开启时生成一条缓存规则:路径前缀 /,缓存时间(秒) 3600,遵循源站 Cache-Control 开启(源站没有Cache-Control、Expires时缓存 3600 秒) -
点击 创建。网站所在集群发布新的配置版本,页面进入网站详情。提示 网站已创建 随节点更新:生效中 N/M → 已生效(配置金丝雀期间为 金丝雀 N/M,HH:MM 全部生效)。
| 规则 | 说明 |
|---|---|
| 所在集群 | 有多个集群时在表单的「集群」中选择(默认最早创建的集群);经 API 创建时用 clusterId 指定。网站创建后不能更换集群 |
| 域名 | 网站保存后域名即发布到节点。一个域名(名称及是否泛域名)只能属于一个网站 |
| 源站地址 | 特殊用途地址段内的源站被拒绝,源站地址允许清单中的地址段除外 |
| 停用 | 网站 概览 页签的 停用:网站不再下发到节点,节点对其域名的 HTTP 请求返回 503 停用页面(X-Edgeweir-Error: site-disabled),HTTPS 请求在 TLS 握手时失败;DNS 记录保留。启用 后恢复,见网站启停 |
源站池、缓存规则与缓存键见 源站与缓存。
4. 配置 DNS
在域名的权威 DNS 中为每个网站域名添加记录。
| DNS 调度 | 记录 |
|---|---|
| 未配置(集群的 DNS 为 不管理) | A / AAAA 记录指向网站 域名 页签 边缘地址 卡片列出的地址(集群在线节点的调度地址,可复制),每个地址一条 |
| 已配置(集群与节点 的 DNS 页签) | CNAME 记录指向网站 域名 页签 CNAME 目标 卡片中的地址(<网站 ID>.<集群域名>)。自动模式下卡片状态为 已发布 时记录已写入服务商;手动模式下先按该页签列出的记录创建集群记录 |
卡片列出每个域名当前的解析:指向正确(解析到的地址都属于集群节点)、指向其他地址、未解析、未能检查(解析失败,或节点没有已知地址)。泛域名解析其下的 edgeweir-check.<域名>。卡片与 上线检查 每 30 秒重新解析,点击卡片标题旁的 重新检查 立即解析;递归解析器缓存的结果(包括「域名不存在」)在其 TTL 内不变。
DNS 调度的线路、健康摘除与 TTL 见 配置 DNS 调度。
5. 启用 HTTPS
- 打开网站的 HTTPS 页签。页签列出的问题(如第 4 步的记录尚未生效)修正后点击 重新检查。
- 点击 启用 HTTPS。控制台为网站的全部域名申请证书(有泛域名时需要先添加 DNS 凭据),签发后自动选用;需要把 HTTP 跳转到 HTTPS 时,再在 HTTPS 设置中打开 强制 HTTPS。
- 集群发布新版本。集群内有已启用的网站使用证书时,节点监听 TCP 443。
上传的证书在 证书 页上传后,在网站的 HTTPS 页签的 已有证书 中选用。
签发方式、续期、TLS 与 HTTP/3 见 HTTPS 与证书。
6. 验证
-
查看网站 概览 页签的 上线检查,每一项可点击进入对应的设置:
项目 通过 未通过时 DNS 已指向 N/M 全部域名 指向正确 列出未指向的域名;进入 域名 页签 证书 证书已覆盖全部域名,或 未配置证书(只提供 HTTP) 证书未覆盖全部域名(列出域名)、证书签发中、证书签发失败(显示原因)、证书已过期;进入 HTTPS 页签 已在 N/M 个节点生效 N 等于 M 金丝雀期间显示窗口结束时间;没有在线节点 时先接入节点;进入集群 -
绕过 DNS,直接向节点发送 HTTP 请求。未配置 DNS 调度时,边缘地址 卡片为每个域名给出可复制的命令(网站证书覆盖该域名时为 HTTPS);也可以手动替换下例中的
203.0.113.10:curl -sI --resolve www.example.com:80:203.0.113.10 http://www.example.com/预期:状态码与源站一致;响应带
X-Cache头,缓存规则覆盖的路径首次为MISS。 -
重复第 2 步。源站响应可缓存时返回
X-Cache: HIT。 -
启用 HTTPS 后:
curl -sI --resolve www.example.com:443:203.0.113.10 https://www.example.com/HTTPS 请求用
--resolve,不用-H 'Host: …':节点要求 SNI 与Host一致。 -
DNS 生效后:
dig +short www.example.com curl -sI http://www.example.com/预期:
dig返回节点地址(配置了 DNS 调度时先返回 CNAME 目标);curl结果与第 2 步相同。
故障排查
| 现象 | 原因 | 处理 |
|---|---|---|
| 初始化提示 初始化令牌无效 | token 错误或已使用 | 从日志重新读取;初始化完成后使用登录页 |
| 初始化提示 初始化正在进行,请稍后重试 | 另一个初始化请求正在执行 | 稍后重试 |
| 节点未出现或 离线 | 注册失败,或节点无法访问节点通道 | 见 接入节点 与 端口、反向代理与可信代理 |
| 节点一直是 等待心跳 | 已注册,但节点的 agent 还没有连上节点通道 | 见 接入节点 |
| 已应用版本 显示 应用失败 | 节点校验或应用配置失败 | 鼠标悬停该标记查看原因 |
| 已应用版本 显示 需要升级 | 节点缺少配置所需能力 | 升级节点,见 节点升级 |
404,X-Edgeweir-Error: unknown-host | 节点配置中没有该域名:版本未应用,或域名不属于任何网站 | 检查 已应用版本,以及网站 概览 页签的 状态 |
503,X-Edgeweir-Error: site-disabled | 网站已停用 | 在网站 概览 页签 启用 |
| HTTPS 请求在 TLS 握手时失败 | SNI 不属于节点正在服务的网站(未知域名、已停用的网站),或网站没有证书、证书尚未覆盖该域名 | 用 HTTP 请求查看节点的应答;检查 上线检查 的证书项 |
| 上线检查 的域名为 指向其他地址 | 记录指向旧服务器、其他 CDN,或同时含其他地址 | 只保留指向边缘地址(或 CNAME 目标)的记录,等待旧记录的 TTL 过期 |
| 上线检查 的域名为 未解析 | 域名还没有记录,或 CNAME 目标没有地址(CNAME 目标 卡片为 无健康节点);记录生效前查询过的递归解析器在区域的负缓存时间内仍返回「域名不存在」 | 添加记录;无健康节点 时确认节点在线且数据面健康;之后点击 重新检查 |
| 上线检查 的域名为 未能检查 | 解析超时,或集群节点还没有已知地址 | 确认节点在线并上报了公网地址,或在节点详情中配置调度地址 |
421,X-Edgeweir-Error: sni-host-mismatch | HTTPS 请求的 SNI 与 Host 不一致 | 使用 --resolve |
502,X-Edgeweir-Error: no-origin | 没有可用源站 | 检查源站地址、端口、协议与健康状态,见 源站与缓存 |
508,X-Edgeweir-Error: loop-detected | 源站指回节点 | 源站地址改为真实源站 |
| 新建网站提示 源站地址 … 属于特殊用途地址段 …,不在源站地址允许清单中 | 源站为内网、回环等地址 | 改用公网地址,或将地址段加入 源站地址允许清单 |
| 新建网站提示 域名已被使用:… | 域名已属于另一个网站 | 更换域名,或先从原网站移除 |