我的 Caddy 配置

Caddy 服务器

这是一个 Web Server 的时代,apachenginx共舞,在追求极致性能的路上,没有最高,只有更高。但这又是一个追求个性化的时代,有些 Web Server 并没有去挤“Performance 提升”这一独木桥,而是有着自己的定位,Caddy 就是这样一个开源 Web Server。

Caddy 的作者 Matt Holt 在caddy 官网以及 FAQ 中对 caddy 的目标阐释如下: 其他 Web Server 为 Web 而设计,Caddy 为 human 设计。功能定位上,与经常充当最前端反向代理的 nginx 不同,caddy 致力于成为一个易用的静态 文件 Web Server。可以看出 Caddy 主打易用性,使用配置简单。并且得益于 Go 的跨平台特性,caddy 很容易的支持了三大主流平台:Windows、 Linux、Mac。在 Caddy 开发者文档中,我们可以看到 caddy 还可以在 Android(linux arm)上运行。caddy 目前版本为 0.7.1,还不稳定,且后续版本可能变化较大,甚至与前期版本不兼容,因此作者目前不推荐 caddy 在生产环境被 重度使用。

Caddy 是一个支持 HTTP/2 的跨平台 Web 服务器,使用和配置都非常简单。Caddy 支持 HTTP/2, IPv6, Markdown, WebSockets, FastCGI, 模板等等。

  • iplaysoft 介绍的《轻松把文件夹变成网站!使用 Caddy 服务器软件自己搭建网页形式的文件共享》
  • 小众软件《Caddy – 最简单的支持 HTTP/2 的网页服务器》

下载

  • Directlink to download:
    https://caddyserver.com/download/darwin/amd64?plugins=dns,hook.pluginloader,hook.service,http.authz,http.awslambda,http.cgi,http.cors,http.datadog,http.expires,http.filemanager,http.filter,http.git,http.hugo,http.ipfilter,http.jwt,http.login,http.mailout,http.minify,http.prometheus,http.proxyprotocol,http.ratelimit,http.realip,http.upload,net,tls.dns.cloudflare,tls.dns.digitalocean,tls.dns.dnsimple,tls.dns.dnspod,tls.dns.dyn,tls.dns.exoscale,tls.dns.gandi,tls.dns.googlecloud,tls.dns.linode,tls.dns.namecheap,tls.dns.ovh,tls.dns.rackspace,tls.dns.rfc2136,tls.dns.route53,tls.dns.vultr

  • One-step installer script (bash):

    curlhttps://getcaddy.com | bash -sdns,hook.pluginloader,hook.service,http.authz,http.awslambda,http.cgi,http.cors,http.datadog,http.expires,http.filemanager,http.filter,http.git,http.hugo,http.ipfilter,http.jwt,http.login,http.mailout,http.minify,http.prometheus,http.proxyprotocol,http.ratelimit,http.realip,http.upload,net,tls.dns.cloudflare,tls.dns.digitalocean,tls.dns.dnsimple,tls.dns.dnspod,tls.dns.dyn,tls.dns.exoscale,tls.dns.gandi,tls.dns.googlecloud,tls.dns.linode,tls.dns.namecheap,tls.dns.ovh,tls.dns.rackspace,tls.dns.rfc2136,tls.dns.route53,tls.dns.vultr

我的一些配置信息

《Caddyfile 配置官网说明》

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
#=> Caddyfile配置 https://caddyserver.com/docs/caddyfile
##########################
# 多站点 #
##########################
#=> Vue2.0站点 → port:2000
localhost:2000,
https://vue-2-demo.com {
# 站点物理路径
root ../../../Users/lxbin/Documents/WWW/vue-2.0-demo/dist
# log日志输出路径
#log ../log/localhost-2000.log
# 开启gzip
#gzip
}

#=> 9X_WAP站点 → port:8000
localhost:8000,
https://m2.test.jiuxiulvxing.com {
# 站点物理路径
root ../../../Users/lxbin/Documents/WWW/9X_WAP/
# log日志输出路径
log ../log/localhost-8000.log
# 开启gzip
#gzip
}

##########################
# 反向代理 #
##########################
#=> 反向代理 → port:80
#https://leo.xuebin.leo {
# proxy / localhost:80
# log ../log/proxy-port-80.log
#}

#=> 反向代理 → port:8080
#https://leo.xuebin.leo {
# proxy / localhost:8080
# log ../log/proxy-port-8080.log
#}

#https://leo.xuebin.leo {
# proxy / localhost:8000
# log ../log/proxy-port-8000.log
#}

##########################
# 文件服务器 #
##########################
#=> 文件服务器,指定文件服务器地址
192.168.100.126:1000
filemanager / {
# 文件目录地址
show ../../../Users/lxbin/Documents/WWW/
# 是否可以新建
allow_new true
# 是否可以修改
allow_edit true
}

##########################
# 异常处理 #
##########################
errors {
log ../log/error.log
404 404.html # Not Found
500 500.html # Internal Server Error
}
坚持原创技术分享,您的支持将鼓励我继续创作!
  • 本文作者: Leo
  • 本文链接: https://xuebin.me/posts/115698af.html
  • 版权声明: 本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!