Automatic HTTPS - Caddy 文档得知,Caddy 是支持配置 *.fun2ex.com这样的泛域名格式的。

直接参考文档的配置,/etc/caddy/Caddyfile 初始配置如下:

*.fun2ex.com
{
        tls {
            dns dnspod
        }
        root /var/www/html
}

我自己用的是 DNSPOD,具体的支持 DNS 服务商可以直接从文档查看。 接下来要设置 DNSPOD Auth Api 的环境变量,具体环境变量值可以从 Automatic HTTPS - Caddy 找到。

因为我用的是 systemd 来管理 caddy 进程,所以直接编辑 caddy 的 service 文件就行:

sudo vim /etc/systemd/system/caddy.service

找到 Environment= 这一行,加上环境变量的值,如要添加多个,使用空格分割:

; Letsencrypt-issued certificates will be written to this directory.
Environment=CADDYPATH=/etc/ssl/caddy DNSPOD_API_KEY='$id,$hash_key'

让我们重启试试:

sudo systemctl restart caddy
sudo systemctl status caddy

未完待续…

  1. 將 nginx 調整為 caddy,世界上的網站都與 ssl 做好朋友
  2. How to specify an Environment systemd directive containing =? - Ask Ubuntu