fuomag9/caddy-proxy-manager 里,这三项基本对应三种“域名入口行为”:

  • Redirects:把请求 重定向到另一个 URL(301/302 等)(GitHub)
  • Dead Hosts:给某个域名返回一个“维护页/占位页”(项目里直接写的是 maintenance pages)(GitHub)
  • Access Lists:给站点加访问控制(最常见是 HTTP Basic Auth;项目也提到 OAuth2/OIDC、以及站点页描述里提到 IP access lists)(GitHub)

1) Redirects(重定向)

用途:把一个域名/路径导到另一个地方,比如:

  • http://xxxhttps://xxx
  • www.xxx.comxxx.com
  • 旧路径 /old → 新路径 /new
  • 把整个域名迁移到新域名

怎么用(UI 思路)

  1. Redirects → Add/New

  2. 源域名(可能还会让你选 scheme:http/https)

  3. 目标地址(to / destination)

  4. 选状态码:

  5. 保存

怎么验证

curl -I http://旧域名
# 看 Location: 是否正确、状态码是否 301/302

2) Dead Hosts(维护页/占位)

用途:当你想“这个域名我接管了,但暂时不提供服务/不反代”,就用 Dead Host:

  • 维护期间不想把真实后端暴露出来
  • 先占住域名,避免落到默认站点
  • 临时下线某个服务,但想给用户一个明确的页面(maintenance page)(GitHub)

怎么用(UI 思路)

  1. Dead Hosts → Add/New
  2. 填域名
  3. 选择/编辑返回内容(有的实现会是固定维护页,有的支持自定义 HTML/文本)
  4. 保存

怎么验证:直接浏览器访问该域名,看是否出现维护页/占位响应。


3) Access Lists(访问控制)

用途:给某个站点加“门禁”,最常用两类:

  • Basic Auth 用户名密码(浏览器会弹窗要账号密码)(Caddy Web Server)
  • 额外的访问控制能力:项目站点提到可用 IP access listsOAuth2/OIDC 会话(具体看你当前版本 UI 是否提供对应项)(Caddy Proxy Manager)

怎么用(常见工作流)

  1. 先在 Access Lists 里新建一个 List

    • 添加用户/密码(Basic Auth)
    • (如果有)添加允许/拒绝的 IP 网段,或启用 OAuth
  2. 然后去 Proxy Hosts(反代规则)里,把该域名的 “Access List/Authentication” 关联到刚才创建的 List

  3. 保存

怎么验证

  • 浏览器打开该域名:应该弹出 Basic Auth 登录框
  • 或用 curl:
curl -I https://你的域名
# 通常未认证会看到 401

你应该怎么选?

  • 只是想“把 A 域名导到 B 域名/路径” → Redirects
  • 想“域名先接管/先下线/维护中” → Dead Hosts
  • 想“这个站点必须登录才能看(或只允许某些 IP / OAuth 登录)” → Access Lists