# 用泛域名转发多个子域名

> 用一条 HTTP(S) 隧道规则匹配并转发同一后缀下的多个子域名

---

LLMS 索引： [llms.txt](/llms.txt)

---

泛域名规则用一条 HTTP(S) 隧道接收同一后缀下的多个子域名。例如 `*.proxy.com` 可让 `a.proxy.com`、`b.proxy.com` 等转发到同一目标。

## 配置步骤

1. 在 DNS 服务商添加 `*.proxy.com` 的 A/AAAA 记录，指向 NPS 服务端。
2. 在 Web 管理新增 HTTP(S) 隧道，把“域名”填写为 `*.proxy.com`。
3. 填写目标地址；如使用 HTTPS，配置覆盖这些子域名的通配符证书和私钥。
4. 另行创建 `proxy.com` 规则，因为 `*.proxy.com` 不包含根域名本身。

NPC 配置文件示例：

```ini
[wildcard_site]
host=*.proxy.com
target_addr=127.0.0.1:8080
```

泛域名只负责选择 NPS 转发规则。后端仍会收到访问者请求的具体 Host；如果后端只接受固定主机名，可配合[改写后端 Host](/extend/feature/host-rewrite.html)。

## 安全边界

当前泛域名按配置中 `*` 之外的域名片段进行包含匹配，不是严格的 DNS 标签匹配。不要使用过短或过宽的规则，并在 NPS 前的反向代理、防火墙或后端再次限制允许的 Host。对需要隔离的站点，应使用精确域名规则。

通配符证书通常只覆盖一级子域名，例如 `*.proxy.com` 不覆盖 `a.b.proxy.com`。部署后至少验证一个预期子域名、根域名和一个不应命中的 Host，确认不会把未知域名转发到内网默认站点。
