全文转自厘米天空
今天要介绍的是使用Caddy来反代网站,这个小HTTP Server是用Go语言编写的,占用资源小,在功能上还不能和Nginx相比,但是胜在上手简单。需要的同学可以试试,我测试了一下非常简单,你只需要准备好自己的域名和一台vps,一键脚本来自逗比大佬的博客。
使用步骤
一键部署Caddy
wget -N --no-check-certificate https://raw.githubusercontent.com/ToyoDAdoubi/doubi/master/caddy_install.sh && chmod +x caddy_install.sh && bash caddy_install.sh install http.filemanager
编辑配置文件
其它的方式就不看了,这里我们只看使用你自己的子域名来反代https的网站。如果没有提前准备好域名的ssl证书,那么把下面一段中的mail@qq.com换成自己的邮箱就好了,脚本会自动申请好Lets encrypt的ssl证书。申请 SSL证书前,请务必提前解析好域名记录(解析后最好等一会,以全球生效),否则 Caddy会申请并配置失败!
echo "https://abc.com { gzip tls mail@qq.com proxy / https://www.google.com.hk }" > /usr/local/caddy/Caddyfile
如果一切正常,那么Caddy会自动帮你申请 SSL证书并配置好,而且会定时续约SSL证书 和 强制 http重定向至https !如果你的网站不想公开分享需要加密码的话就在邮箱那一行下面加上basicauth / user passwd,user和passwd分别改成你的用户名和密码。
修改完 Caddy的配置文件后,重启 Caddy即可。
/etc/init.d/caddy restart
使用说明
启动:/etc/init.d/caddy start
停止:/etc/init.d/caddy stop
重启:/etc/init.d/caddy restart
查看状态:/etc/init.d/caddy status
查看Caddy启动日志: tail -f /tmp/caddy.log
Caddy配置文件位置:/usr/local/caddy/Caddyfile
Caddy自动申请SSL证书位置:/.caddy/acme/acme-v01.api.letsencrypt.org/sites/xxx.xxx(域名)/
卸载 Caddy:
执行以下代码后,会问你是否确定要卸载 Caddy,输入y即可。卸载 Caddy 会把Caddy的所有虚拟主机文件夹和配置文件删除,并且不可恢复!
wget -N --no-check-certificate https://raw.githubusercontent.com/pipesocks/install/master/caddy_install.sh && chmod +x caddy_install.sh && bash caddy_install.sh uninstall
启动错误
一些系统会自带 apache2 ,而 apache2 会占用 80 端口,导致 Caddy 无法绑定端口,所以只要关掉就好了。
kill -9 $(ps -ef|grep "apache2"|grep -v "grep"|awk '{print $2}') && apt-get remove --purge apache2 -y
如果出现tool systemctl is not installed, abort错误提示,则apt-get install systemd就好了。
文章评论