一个极简的HTTP Server: Caddy一键安装脚本

说明:一直以来都是用的lnmp,无奈安装时间太长,而且本人只用到了其中的一小部分内容。以前一直在看逗比根据,发现Caddy真的是很强大,一个极简的HTTP服务器,支持HTTP/2静态网页服务器,而且占用的资源也相对较低。

安装

系统要求:CentOS 6+/Debian 6+/Ubuntu 14.04 +。推荐Debian 8 x64

本脚本只是一个一键安装+运行控制的脚本,没有其他管理虚拟主机等功能。

执行下面的代码安装Caddy

1
wget -N --no-check-certificate https://raw.githubusercontent.com/danziw/doubi/master/caddy_install.sh && chmod +x caddy_install.sh && bash caddy_install.sh

使用说明

1
2
3
4
5
6
7
8
启动:/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
安装目录:/usr/local/caddy
Caddy配置文件位置:/usr/local/caddy/Caddyfile
Caddy自动申请SSL证书位置:/.caddy/acme/acme-v01.api.letsencrypt.org/sites/xxx.xxx(域名)/

当安装完成以后,还得给网站生成一个配置文件。

网站配置文件

1.本地访问80

1
:80

2.单网站访问

1
2
3
example.com
root /usr/local/caddy/www
//更多模块

3.多网站

1
2
3
4
5
example.com {
gzip
root /usr/local/caddy/www
//更多模块
}

常用基本组成模块,均写入到conf站点配置中。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#log日志
log /usr/local/caddy/www/example.log

#目录访问
browse

#gzip压缩
gzip

#自主ssl证书
tls /path/ssl/example.com.crt /path/ssl/example.com.key

#访问口令认证(用户emiria,密码abc123)
basicauth / emiria abc123

#跳转功能
redir http://example.com{url}

#自定义错误页面
errors {
404 404.html
500 /usr/local/caddy/www/500.html
}

例如,通过IP80端口访问目录:

1
2
3
4
5
:80 {
root /usr/local/caddy/www
gzip
browse
}

也可以直接执行命令写入,以下是一个命令,直接复制粘贴即可。

1
2
3
4
5
echo ":80 {
root /usr/local/caddy/www
gzip
browse
}" > /usr/local/caddy/Caddyfile

更多配置参考:https://caddyserver.com/tutorial/caddyfile

设置文档参考:https://caddyserver.com/docs

0%