Caddy 是一个功能强大、可扩展的平台,用于为网站服务和应用程序提供服务,这些平台是用 Go 编写的。虽然相比 Nginx 等主流 Web 服务效率低,但其关注度非常高!
Caddy 是一个支持 HTTP/2 的跨平台 Web 服务,使用和配置都非常简单。Caddy 支持 HTTP/2, IPv6/Markdown/WebSockets/FastCGI 等。
Caddy 常用作 HTTPS 服务器,但它适用于任何长时间运行的 Go 程序。首先,它是一个运行 Go 应用程序的平台。Caddy 只是作为 Caddy 模块实现的 Go 程序。
Caddy 应用程序可立即受益于自动化文档、通过 API 进行的优雅在线配置更改,及与其他 Caddy 应用程序的统一。
虽然 JSON 是 Caddy 的原生配置语言,但 Caddy 可以接受来自配置适配器的输入,这些适配器基本上可以将选择的任何配置格式转换为 Caddyfile/JSON 5/YAML/TOML/Nginx 配置。
配置 Caddy 主要方法是通过其 API,但如果更喜欢配置文件,命令行界面也支持这些文件。
与现有的任何 Web 服务器相比,Caddy 暴露前所未有的控制水平。在 Caddy 中通常在内存中设置初始化类型的实际值,这些值为从 HTTP 处理程序和 TLS 握手到存储介质的所有内容提供支持。Caddy 可扩展性也非常可笑,它具有强大的插件系统,可以比其它 Web 服务器进行巨大的改进。
Caddy 几乎所有配置都包含在单个配置文档中,而不是像其它 Web 服务器那样分散在 CLI 标志和 env 变量及配置文件中。这使得管理服务器配置更加简单,并减少了隐藏的变量和因素。
以上是我从官方机翻过来的,感觉别扭可以找我获取英文原版!
Debian/Ubuntu/Raspbian 执行如下指令安装 Caddy:
1 | sudo apt install -y debian-keyring debian-archive-keyring apt-transport-https |
Fedora/RedHat/CentOS 执行如下指令安装 Caddy:
1 | yum install yum-plugin-copr |
一个配置示例:
1 | https://dusays.com # Your site's address |
更简单的配置:
1 | localhost |
1 | caddy run |
注意:如执行 caddy
,该命令仅显示帮助文本。