使用Caddy反向代理本地域名
由于网络限制,我们升级了脚本 diary.sh,使其能够在无法访问 GitHub 的电脑上本地托管博客,这样在办公环境中可以使用高度定制化的博客系统,从而提高工作效率和规范性。尽管通过 Python3 实现的博客可以在本地域名 127.0.0:4000 或 http://localhost:4000 上运行,但在浏览器地址栏中看起来不够美观,并且需要在 Firefox 中手动设置代理为 http://localhost:4000。为此,本节介绍了一项锦上添花的技术:使用 Caddy 反向代理并生成自签名证书,这样当访问 https://fungzhenhua.github.io 时,实际上是在访问 http://localhost:4000 的内容。
配置Caddy
安装Caddy
| |
配置Caddy, 使用自签名证书
测试配置是否正确
| |
如果看到Valid configuration字样,说明配置正确,字样通常在最后一行。
启动Caddy
重启Caddy
| |
Firefox导入证书
在完成上述Caddy设置后,发现每次打开Firefox后总是有风险提示,为了应对这个麻烦需要使用Firefox导入由Caddy生成的证书。由于使用tls internal方式,则Caddy默认生成的证书存放于/var/lib/caddy/pki/authorities/local/root.crt, 访问它需要root权限,于是解决方案是将其复制到家目录,然后赋于读写权限,再导入到Firefox的证书分布机构则问题可解决。
具体操作
如果是其他的Linux发行版,则需确认具体root.crt的路径。
在Firefox中导入
- 打开
about:preferences#privacy - 点击
查看证书... - 切换到
证书颁发机构标签页(注意:不是您的证书标签页) - 点击
导入 - 选择
~/caddy-root.crt - 勾选三个信任 → 确定