抱歉,您的浏览器无法访问本站
本页面需要浏览器支持(启用)JavaScript
了解详情 >

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
2
3
4
5
sudo apt install -y debian-keyring debian-archive-keyring apt-transport-https
curl -1sLf 'https://dl.cloudsmith.io/public/caddy/stable/gpg.key' | sudo gpg --dearmor -o /usr/share/keyrings/caddy-stable-archive-keyring.gpg
curl -1sLf 'https://dl.cloudsmith.io/public/caddy/stable/debian.deb.txt' | sudo tee /etc/apt/sources.list.d/caddy-stable.list
sudo apt update
sudo apt install caddy

Fedora/RedHat/CentOS 执行如下指令安装 Caddy:

1
2
3
yum install yum-plugin-copr
yum copr enable @caddy/caddy
yum install caddy

配置文件

一个配置示例:

1
2
3
4
5
6
7
https://dusays.com                # Your site's address
ext .html # Clean URLs
errors {
log ../errors.log # Error log
404 error-404.html # Custom error page
}
fastcgi /blog localhost:9000 php # PHP backend

更简单的配置:

1
2
3
4
5
6
7
localhost
gzip
browse
ext .html
websocket /echo cat
log ../access.log
header /api Access-Control-Allow-Origin *

运行服务

1
caddy run

注意:如执行 caddy,该命令仅显示帮助文本。

评论