从Nginx迁移到Caddy

26 12月

之前博客使用的是Nginx,证书是从let’s encrypt申请的。Nginx配置是比较多,但是从各种参考参考,还是能够配置的。唯一的问题是let’s encrypt证书需要定时更新,更新以后需要Nginx重新加载一下,操作上始终有些繁琐。

Caddy是一个综合解决方案,结合了防火墙、代理、证书等功能,最重要的是使用方便,配置简单。

从Nginx迁移只需要几分钟,我之前使用的docker-compose管理,所以配置如下

Caddy相关配置

caddy:
  image: abiosoft/caddy:1.0.3
  restart: always
  container_name: caddy
  external_links:
  - blog
  environment:
    - CADDYPATH=/etc/caddycerts
  ports:
  - 80:80
  - 443:443
  volumes:
  - /alidata/data/caddy/Caddyfile:/etc/Caddyfile
  - /alidata/data/caddy/certs:/etc/caddycerts

而最关键Caddy配置文件只有几行,主要就是代理一下,顺便强制跳转http到https

huangyunkun.com {
    redir https://www.huangyunkun.com{uri}
}

www.huangyunkun.com {
  redir {
    if {scheme} is http
    / https://{host}{uri}
  }
  gzip
  proxy / blog:80 {
    transparent
  }
}

发表评论

电子邮件地址不会被公开。