← 中文资源

简体中文版本

用 Caddy 自动提供 HTTPS

把域名指向 Caddy,让它自动获取并续期证书,同一配置块内设置安全头与反向代理,无需额外的 certbot 步骤。

阅读英文原文

概述

手工签发与续期证书容易出错,过期还曾导致站点中断。Caddy 将获取与续期内建到服务启动与请求流程中,把 TLS 从运维负担变为默认能力,通配符场景则改用 DNS 挑战。

关键步骤

  1. 在站点块中配置主机名与上游。
  2. 让 Caddy 在首次请求或启动时自动获取证书。
  3. 在同一块内添加安全头与反向代理。
  4. 观察续期日志,通配符场景配置 DNS 挑战。

验证

  • 域名可经 HTTPS 访问且证书有效。
  • 证书在到期前自动续期。
  • 安全头与代理正常工作。
  • 通配符场景使用 DNS 挑战成功签发。

注意事项

  • 自动 HTTPS 需要 80 或 443 端口可达,或使用 DNS-01 的 DNS API 权限。
  • 它隐藏了证书细节,而某些合规流程要求显式管理证书。

适用范围

本条目围绕「用 Caddy 自动提供 HTTPS」给出可复制的步骤、验证方式与常见问题,适合需要按此流程落地的工程团队。执行时请结合自身上下文调整命令与阈值,并在变更前后留存证据,便于后续复核与回滚。

app.example.com {
  encode gzip
  header Strict-Transport-Security "max-age=31536000; includeSubDomains"
  reverse_proxy 127.0.0.1:3000
}