在 Ubuntu 22.04 上轻松安装 Caddy 和 PHP 8.1在 Ubuntu 22.04 上轻松安装 Caddy 和 PHP 8.1在 Ubuntu 22.04 上轻松安装 Caddy 和 PHP 8.1在 Ubuntu 22.04 上轻松安装 Caddy 和 PHP 8.1
  • 业务
  • 目标
  • 支持
  • 登录
找到的结果: {phrase} (显示: {results_count} 共: {results_count_total})
显示: {results_count} 共: {results_count_total}

加载更多搜索结果...

搜索范围
模糊匹配
搜索标题
搜索内容

在 Ubuntu 22.04 上轻松安装 Caddy 和 PHP 8.1

发表 admin at 2025年2月28日
类别
  • 未分类
标签

本指南提供了在 Ubuntu 22.04 上安装 Caddy 和 PHP 8.1 以及获取免费 SSL 证书的分步说明。

Caddy 是一个免费、注重安全、支持 HTTP/2 的 Web 服务器,用 Go 编写,设计简单、高效且可移植。它提供了现代功能,例如虚拟主机支持、反向代理功能等。此外,Caddy 是第一个使用 Let’s Encrypt 自动获取和更新 SSL/TLS 证书的 Web 服务器。

是的,Nginx 近年来因其闪电般的性能和众多功能而成为 Web 服务器的首选。然而,尽管是一个相对较新的项目,但由于易用性、速度和本机 SSL 支持等特点,Caddy 的受欢迎程度已经飙升。因此,它很快成为许多开发人员和系统管理员选择的 Web 服务器。

如果您是 Caddy 设置和管理的新手,这个过程可能看起来令人畏惧,但不用担心 - 我们已让您轻松完成。通过遵循本指南中的步骤,您将能够快速轻松地在 Ubuntu 22.04 LTS 上启动并运行 Caddy 服务器,并支持 PHP 8.1,从而使您的网站设置变得轻而易举。那么,让我们开始工作吧。

步骤1:在Ubuntu 22.04上安装Caddy Web服务器

首先,您必须将 Caddy 的官方外部存储库添加到您的系统中,因为默认情况下 Web 服务器不包含在 Ubuntu 存储库中。但首先,您需要安装一些软件包依赖项。

sudo apt install -y debian-keyring debian-archive-keyring apt-transport-https

然后,运行以下两个 cURL 命令来添加 Caddy 存储库:

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

最后,刷新软件包列表并在 Ubuntu 22.04 系统上安装 Caddy Web 服务器。

sudo apt update
sudo apt install caddy

您现在可以使用以下命令来检查 Caddy 服务的状态;它应该确认 Caddy 已启动并正在运行。

sudo systemctl status caddy

步骤 2:启用 HTTP(S) 防火墙端口

下一步是确保防火墙不会阻止对 Web 服务器的访问,如果阻止,则添加必要的规则以启用端口 80 (HTTP) 和 443 (HTTPS) 上的流量。

首先,检查防火墙的当前状态。如果结果为“无效”,您可以跳过下一个,如下所示。

sudo ufw status verbose

但是,如果结果不同,则防火墙处于活动状态,您必须添加以下规则以允许端口 80 和 443 上的连接到 Caddy Web 服务器。

sudo ufw allow proto tcp from any to any port 80,443

现在,将您的浏览器指向 Caddy 将服务的域,Caddy 的默认网页将欢迎您。我们将在本指南中使用临时创建的子域“caddy.tmplinux.com”。当然,请将其替换为适合您情况的版本。

正如您所看到的,Caddy 已启动并运行并按预期工作。在接下来的步骤中,我们将添加 PHP 支持,为我们的域创建虚拟主机,并自动获取免费的 SSL Let’s Encrypt 证书。

步骤 3:在 Ubuntu 22.04 上安装 PHP

要在 Caddy 中启用 PHP 支持,您应该首先在 Ubuntu 22.04 系统上安装 PHP-FPM,Caddy 将使用它来执行 PHP 文件。此外,您还需要安装一些最常用的PHP模块才能拥有完整且全功能的PHP功能。

sudo apt install php-fpm php-mysql php-gd php-cli php-curl php-mbstring php-zip php-opcache php-xml php-xmlrpc

步骤 4:配置 Caddy 以使用 PHP 和 SSL

在继续之前,创建将存放您的网站文件的目录。换句话说,您将 Caddy 指向您网站的根目录。例如,“/srv/www/caddy”。

sudo mkdir -p /srv/www/caddy

我们已经到达了这个过程中最令人愉快的部分,Caddy Web 服务器在其中闪耀着它所有的荣耀——配置。习惯了 Apache 或 Nginx 配置的复杂性的系统管理员将会着迷。此外,您可以在 Ubuntu 22.04 系统上轻松地设置具有 PHP 支持和自动 SSL 证书颁发的 Caddy。

使用您喜欢的文本编辑器打开 Caddy 配置文件“Caddyfile”,删除所有行并添加以下行。如果您需要帮助了解它们的用途,请不要担心。我将在下面更详细地解释。

sudo vim /etc/caddy/Caddyfile
caddy.tmplinux.com {
        root * /srv/www/caddy
        tls [email 
        encode gzip zstd
        php_fastcgi unix//run/php/php8.1-fpm.sock
}

最终结果应如下所示:

  • caddy.tmplinux.com:Caddy Web 服务器将提供服务的域名。
  • root * /srv/www/caddy:包含网站文件的根目录的完整路径。
  • tls [email :指示 Caddy 自动颁发免费的 Let’s Encrypt SSL 证书,并指定向所有者发送通知的电子邮件地址。
  • encode gzip zstd:指定使用压缩来提高性能。
  • php_fastcgi unix//run/php/php8.1-fpm.sock:PHP-FPM服务监听的socket文件的路径。

一切准备就绪。保存文件并退出。剩下的就是重新启动 Caddy 服务以应用新的配置设置。

sudo systemctl restart caddy

第 5 步:验证 Caddy PHP 和 SSL 支持

您已在 Ubuntu 22.04 上完成了支持 PHP 和 SSL 的 Caddy 的安装。因此,让我们创建一个测试 PHP 文件来验证 PHP-FPM 是否可以正常工作并与 Caddy 成功集成。

echo "<?php phpinfo(); ?>" | sudo tee /srv/www/caddy/index.php

最后,您到达了该过程中最有趣的部分:享受您努力的结果。因此,让我们将域地址加载到浏览器中,在本例中为“caddy.tmplinux.com”。

好工作!如您所见,将出现一个包含有关 PHP 安装的完整信息的网页。 Caddy 还自动为该域颁发 SSL 证书,确保与网站的通信安全。但是 Caddy 和 Let’s Encrypt 证书的组合有多安全?让我们在 Qualys SSL 实验室检查一下。是的,最高分!

最后,我想做一个必要的澄清。如果您的服务器位于 Cloudflare、DigitalOcean 或类似服务提供的代理服务后面,则由于流量代理方式的具体情况,Caddy 无法颁发 SSL 证书。

换句话说,Caddy 必须预编译一些附加模块才能使用此功能。该过程很简单,但由于它超出了本文的范围,因此将在单独的一篇文章中详细介绍。

结论

本指南向您展示了如何在 Ubuntu 22.04 LTS 上安装具有 PHP 8.1 和 SSL 支持的 Caddy Web 服务器,以便基于 PHP 的 Web 应用程序可以在您的服务器上运行。 certbot 工具是获取免费 Let’s Encrypt SSL 证书的另一种选择。我们的操作指南将向您展示具体操作方法。

Caddy 具有直接嵌入其核心的强大 SSL 支持。此外,它还会自动颁发 SSL 证书并安全地配置 SSL 设置。因此,请查看该项目的网站和文档,了解有关 Caddy 的更多深入信息。

总的来说,Caddy 是一个可靠的 Nginx 替代品。在 Ubuntu 22.04 上安装 PHP 8.1 支持并获取 Let’s Encrypt SSL 证书既简单又高效,对于那些希望在 Ubuntu 系统上设置快速、安全且可靠的 Web 服务器的人来说,它是一个绝佳的选择。

©2015-2025 Norria support@alaica.com