谷歌浏览器已经把没有使用HTTPS协议的网站所有标记为不安全,为了让浏览器不把咱们的网站标记为不安全,为了让访问者能更安心的浏览咱们的网站,咱们只能为咱们的网站开启HTTPS协议支持,因为 Let’s Encrypt 能够为咱们提供免费证书使用,咱们就能够免费的为咱们的网站申请证书,可是因为证书有效期只有3个月,当证书快过时时,咱们须要从新续签。为此有很多工具能帮助咱们完成自助的申请证书以及续签。可是这仍然须要很多的配置。这时一个名为 Caddy 的跨开台开源软件出现了,Caddy 能自动帮咱们申请证书,当证书快过时时自动续签,只需一次配置,后续基本不须要再作其余配置,很是的方便,彻底能够代替 Nginx 与 Apache 。html
去 Caddy 的 Github 发布页下载对应平台的二进制压缩包linux
解压安装github
tar xf caddy_v1.0.3_linux_amd64.tar.gz
mv caddy /usr/local/bin
caddy -version
复制代码
配置 Caddy后端
把以下的配置文件写入名为 Caddyfile
的文件中。浏览器
mgxian.dev {
root /data/blog/mgxian
gzip
log ./access.log
}
www.mgxian.dev {
redir https://mgxian.dev{uri}
log ./access.log
}
复制代码
1-5 为 mgxian.dev 域名的相关配置,指定根目录为 /data/blog/mgxian ,开启 gzip 压缩,并把访问日志记录在当前目录的 access.log 文件中。安全
7-10 为 www.mgxian.dev 域名的相关配置,表示当访问 www.mgxian.dev 域名的相关资源时,将会自动跳转到 mgxian.dev 域名。bash
启动 Caddycurl
启动 Caddy 以后会自动申请 HTTPS 的证书,并自动开启对 HTTP2 协议的支持,启动过程当中可能会提示你输入邮箱接受证书相关的提醒。工具
caddy -conf Caddyfile
复制代码
注意事项
*.mgxian.dev
申请证书,须要使用 DNS Challenge 的方式来申请证书,具体详细文档可参考 DNS Challenge 。访问测试
启动完成后,使用 cURL 访问你的网站域名进行测试。
curl -I https://mgxian.dev/
HTTP/1.1 200 OK
Accept-Ranges: bytes
Content-Length: 64846
Content-Type: text/html; charset=utf-8
Etag: "pwsec41e1a"
Last-Modified: Sun, 25 Aug 2019 09:57:40 GMT
Server: Caddy
Date: Sun, 25 Aug 2019 09:59:27 GMT
复制代码