使用 Caddy 快速搭建高效自动的 HTTPS 服务器

使用 Caddy 快速搭建高效自动的 HTTPS 服务器

2016-11-24

Caddy 是一个用 Golang 写的高效 Web Server,相比 Nginx,它的配置和使用要简单很多,并且支持自动化 HTTPS。

这里介绍本站的 Caddy 服务器配置过程。从 Nginx 换到 Caddy 整个过程不到10分钟,官方甚至有一个28秒的配置视频

1. 快速上手

1.1 下载安装

进入 下载页面 勾选需要的模块,选择平台进行下载 。(我的是 Ubuntu x64,因此选择了Linux 64-bit,下载后再上传到 VPS,因为链接是生成的,没有固定链接,囧)

下载后的压缩文件 caddy_linux_amd64_custom.tar.gz 放到网站根目录(跟 index.html 同级),进行解压:

$ tar zxvf caddy_linux_amd64_custom.tar.gz

会得到 caddy 文件以及 init 文件夹和其他杂项文件。

1.2 运行

在 caddy 解压出来的目录(网站根目录)执行 ./caddy ,这时访问 localhost:2015你的网站应该已经愉快地跑起来了。如果你在 vps 上进行的此操作,远程访问 http://你的ip:2015 应该也能看到你的站点了。

2. 配置 Caddy

如何自定义 Caddy 服务呢?在你的站点目录里创建一个名为 Caddyfile 的文件,文件的第一行写上监听地址,如:

localhost:8080

重新启动 Caddy:执行 ./caddy ,你会发现站点已经运行在8080端口了。

Caddyfile 可以在其他目录,也可以命名为其他你喜欢的名字。只需要在启动 Caddy 时告诉它配置文件在哪:

 

$ caddy -conf="../path/to/Caddyfile"

Caddyfile 语法:查看

3. 实现自动化 HTTPS

Caddy 自动地为你的站点启用 HTTPS。注意:需要配置 host 不能为空,也不能是 localhost 或 ip 地址。

我的静态博客的配置是:

 

blog.hinpc.com {

root /home/blog.hinpc.com/www #换成你的网站路径

gzip

log ../access.log

}

执行 ./caddy ,网站已启动,并且支持 HTTPS 了。它的证书是由 Let’s Encrypt 实现的,并且自动为你的网站申请和续期。

4. 使用 supservisor 来运行 Caddy

在你的 supervisord.conf 文件中,[supervisord] 区域下配置:

 

minfds=4096

supervisord.conf 中添加:

 

[program:caddy]

directory=/etc/caddy/ ## 换成你的目录

command=/etc/caddy/caddy -conf="/etc/caddy/Caddyfile" ## 换成你的配置文件

user=www-data

autostart=true

autorestart=true

stdout_logfile=/var/log/supervisor/caddy_stdout.log

stderr_logfile=/var/log/supervisor/caddy_stderr.log

启用:

 

# supervisorctl reread

# supervisorctl add caddy

# supervisorctl start caddy

参考

https://caddyserver.com/docs/getting-started

http://depado.markdownblog.com/2015-12-07-setting-up-caddy-server-on-debian

转载于:https://my.oschina.net/u/2306127/blog/1622264

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值