凌云的博客

行胜于言

使用 Caddy Sever 使网站支持 HTTPS

分类:Caddy| 发布时间:2022-03-01 10:24:00


前言

现在主流的浏览器都将不支持 HTTPS 的网站都标记为不安全了, 因此今天花了点时间将博客改为支持 HTTPS。

得益于 Caddy2 的强大,整个流程异常简单。

安装 Caddy Server

我的博客运行在 Ubuntu 18.04 下,原来使用 nginx 将请求转发到后台处理。 由于 Caddy2 支持自动更新 SSL 证书,因此这次将 nginx 替换为 Caddy2。

安装命令如下:

sudo apt install -y debian-keyring debian-archive-keyring apt-transport-https
curl -1sLf 'https://dl.cloudsmith.io/public/caddy/stable/gpg.key' | sudo tee /etc/apt/trusted.gpg.d/caddy-stable.asc
curl -1sLf 'https://dl.cloudsmith.io/public/caddy/stable/debian.deb.txt' | sudo tee /etc/apt/sources.list.d/caddy-stable.list
sudo apt update
sudo apt install caddy

Caddyfile

修改 Caddyfile 的内容(默认地址为:/etc/caddy/Caddyfile):

https://cs-cjl.com
{
        encode gzip
        reverse_proxy 127.0.0.1:8080
}

http://www.cs-cjl.com
{
        redir https://cs-cjl.com{url}
}

就算你填入的是 http://cs-cj.com 浏览器也是会尝试使用 https 访问的,因此设置 http 到 https 的转发并不是必要的。

浏览器支持情况

drawing

Chrome、Firefox、Edge 都是直接支持的。

drawing

IE 浏览器默认不支持,需要开启 TLS 1.1 和 TLS 1.2。

drawing drawing

参考