如何在 Ubuntu 22.04 上使用 PHP 8.1 安装 Caddy Web 服务器
本教程适用于这些操作系统版本
- Ubuntu 22.04(Jammy Jellyfish)
- Ubuntu 16.04(Xenial Xerus)
在此页
- 先决条件
- 安装 Caddy Web 服务器
- 如何启动和停止 Caddy 服务
- 在 Caddy 中启用 PHP 支持
- 创建 Caddy 虚拟主机配置文件
- 验证 Caddy PHP 支持
- 结论
Caddy 是一个用 GO 语言构建的现代 Web 服务器。它是一个简单、用户友好、轻量级且受商业支持的 Web 服务器。它支持 HTTP/2 和实验性 HTTP/3 协议,可以在任何地方运行,没有外部依赖性它可以通过插件进行扩展。 Caddy 是唯一默认自动使用 HTTPS 的 Web 服务器。 Caddy 会自动为您的站点获取和更新 TLS 证书。它的设计考虑到了安全性,并提供了许多对托管网站有用的功能。
在这篇文章中,我们将解释如何在 Ubuntu 22.04 上安装 Caddy Web 服务器。
先决条件
- 一台运行 Ubuntu 22.04 的服务器。
- 一个有效的域名指向您的服务器 IP。
- 在服务器上配置了根密码。
安装 Caddy Web 服务器
默认情况下,Caddy 包不包含在 Ubuntu 22.04 默认存储库中。因此,您需要将 Caddy 存储库添加到您的系统中。
首先,使用以下命令安装所有必需的依赖项:
apt-get install -y curl debian-keyring debian-archive-keyring apt-transport-https
接下来,使用以下命令下载并添加 GPG 密钥:
curl -1sLf 'https://dl.cloudsmith.io/public/caddy/stable/gpg.key' | gpg --dearmor -o /usr/share/keyrings/caddy-stable-archive-keyring.gpg
接下来,使用以下命令将 Caddy 存储库添加到 APT:
curl -1sLf 'https://dl.cloudsmith.io/public/caddy/stable/debian.deb.txt' | tee /etc/apt/sources.list.d/caddy-stable.list
接下来,通过运行以下命令更新存储库并安装 Caddy Web 服务器:
apt-get update
apt-get install caddy -y
安装 Caddy 后,您可以使用以下命令验证 Caddy 版本:
caddy version
您将获得以下输出:
v2.6.2 h1:wKoFIxpmOJLGl3QXoo6PNbYvGW4xLEgo32GPBEjWL8o=
接下来,您需要设置一些权限以允许 caddy 二进制文件连接到特权端口,如 80 和 443。您可以使用以下命令进行设置:
setcap 'cap_net_bind_service=+ep' /usr/bin/caddy
现在,打开您的 Web 浏览器并使用 URL http://your-server-ip 访问 Caddy 默认页面。您应该会看到以下页面:

如何启动和停止 Caddy 服务
您可以通过 systemd 管理 Caddy 服务。您可以使用 systemctl 命令轻松启动和停止它。
要启动 Caddy 服务,请运行以下命令:
systemctl start caddy
要停止 Caddy 服务,请运行以下命令:
systemctl stop caddy
要使 Caddy 服务在系统重启时启动,请运行以下命令:
systemctl enable caddy
要检查 Caddy 服务的状态,请运行以下命令:
systemctl status caddy
您将获得以下输出:
? caddy.service - Caddy
Loaded: loaded (/lib/systemd/system/caddy.service; enabled; vendor preset: enabled)
Active: active (running) since Sun 2022-11-20 11:03:31 UTC; 42s ago
Docs: https://caddyserver.com/docs/
Main PID: 2356 (caddy)
Tasks: 8 (limit: 2242)
Memory: 7.8M
CPU: 31ms
CGroup: /system.slice/caddy.service
??2356 /usr/bin/caddy run --environ --config /etc/caddy/Caddyfile
Nov 20 11:03:31 ubuntu2204 caddy[2356]: {"level":"info","ts":1668942211.4061167,"msg":"using provided configuration","config_file":"/etc/cadd>
Nov 20 11:03:31 ubuntu2204 caddy[2356]: {"level":"info","ts":1668942211.4079537,"logger":"admin","msg":"admin endpoint started","address":"lo>
Nov 20 11:03:31 ubuntu2204 caddy[2356]: {"level":"warn","ts":1668942211.4082074,"logger":"http","msg":"server is listening only on the HTTP p>
Nov 20 11:03:31 ubuntu2204 caddy[2356]: {"level":"info","ts":1668942211.4085367,"logger":"http.log","msg":"server running","name":"srv0","pro>
Nov 20 11:03:31 ubuntu2204 caddy[2356]: {"level":"info","ts":1668942211.4088042,"msg":"autosaved config (load with --resume flag)","file":"/v>
Nov 20 11:03:31 ubuntu2204 systemd[1]: Started Caddy.
Nov 20 11:03:31 ubuntu2204 caddy[2356]: {"level":"info","ts":1668942211.419063,"logger":"tls.cache.maintenance","msg":"started background cer>
Nov 20 11:03:31 ubuntu2204 caddy[2356]: {"level":"info","ts":1668942211.4192455,"logger":"tls","msg":"cleaning storage unit","description":"F>
Nov 20 11:03:31 ubuntu2204 caddy[2356]: {"level":"info","ts":1668942211.419398,"logger":"tls","msg":"finished cleaning storage units"}
Nov 20 11:03:31 ubuntu2204 caddy[2356]: {"level":"info","ts":1668942211.4197013,"msg":"serving initial configuration"}
在 Caddy 中启用 PHP 支持
首先,使用以下命令安装 PHP 和其他必要的扩展:
apt-get install php-fpm php-mysql php-curl php-gd php-mbstring php-common php-xml php-xmlrpc -y
安装PHP后,编辑PHP-FPM配置文件,用caddy更改默认用户和组:
nano /etc/php/8.1/fpm/pool.d/www.conf
从 www-data 中查找并替换用户和组名到 caddy:
user = caddy
group = caddy
listen.owner = caddy
listen.group = caddy
保存并关闭文件,然后重新启动 PHP-FPM 服务以应用更改:
systemctl restart php8.1-fpm
创建 Caddy 虚拟主机配置文件
Caddy 默认的虚拟主机配置文件位于 /etc/caddy/Caddyfile。
使用以下命令编辑 /etc/caddy/Caddyfile 文件:
nano /etc/caddy/Caddyfile
删除所有行并添加以下行:
caddy.example.com:80 {
root * /usr/share/caddy/
encode gzip zstd
php_fastcgi unix//run/php/php8.1-fpm.sock
}
保存并关闭文件,然后重新启动 Caddy 服务以应用更改:
systemctl restart caddy
接下来,使用以下命令为 Caddy 创建一个示例 PHP 文件:
nano /usr/share/caddy/info.php
添加以下行:
<?php
phpinfo();
?>
完成后保存并关闭文件。
验证 Caddy PHP 支持
现在,打开您的 Web 浏览器并使用 URL http://caddy.example.com/info.php 访问 Caddy 网站。您应该在以下屏幕上看到 PHP 页面:

结论
在这篇文章中,我们解释了如何在 Ubuntu 22.04 上安装和配置 Caddy Web 服务器。您现在可以开始使用 Caddy 网络服务器创建和托管您自己的网站。如果您有任何问题,请随时问我。