# 新增或覆盖 HTTP 后端请求头

> 在 HTTP(S) 隧道转发前新增固定请求头或覆盖同名字段

---

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

---

HTTP(S) 隧道的“改写请求头”可以在转发前新增请求头，或覆盖后端将收到的同名请求头。常见用途包括给内网应用传递固定环境标识、关闭上游缓存或补充反向代理约定字段。

## Web 配置

新增或编辑 HTTP(S) 隧道，在“改写请求头”中每行填写一个 `名称: 值`：

```text
X-Environment: preview
Cache-Control: no-cache
X-Forwarded-Proto: https
```

保存后对新请求生效。配置使用覆盖语义，同名的访客请求头会被替换。

## NPC 配置文件

配置文件使用 `header_` 前缀：

```ini
[preview]
host=preview.example.com
target_addr=127.0.0.1:8080
header_X-Environment=preview
header_Cache-Control=no-cache
```

修改后重新连接 NPC。

## 限制与安全

- 只改写请求头，不改写后端响应头。
- 每行必须恰好包含一个冒号；值中还需要冒号的复杂字段不适合在这里配置。
- HTTPS 必须在 NPS 终止 TLS；透传流量不可改写。
- 不要把用户可控内容写入 `Authorization`、`Cookie` 等安全敏感字段，也不要用固定请求头代替真正的身份认证。
- 真实来源地址应使用专门的[获取用户真实 IP](/extend/feature/real-ip.html)配置，不要手工写死。

可让后端临时输出收到的请求头，或使用访问日志验证。若未生效，检查是否命中了预期的域名和 URL 路径规则。
