树莓派搭建网站,如何安装和配置Caddy网络服务器

在这个项目中,详细记录了如何安装和配置Raspberry Pi Caddy网络服务器。

caddy-v1-web-watermarked.jpg

虽然Caddy在性能上不如树莓派上的NGINX那么好,但它却有很多对新手用户友好的功能,并且是为现代网络技术而设计的。

Caddy从一开始就着眼于现代网络技术,如HTTP2,并自动通过Caddy配置文件配置的域名提供SSL证书。这些证书都是自动从Lets Encrypt获取的。

一旦掌握了Caddyfile系统,你就会发现它非常方便,而且大多数功能都有非常完善的文档。

设备清单

以下是我在这个Raspberry Pi Caddy网络服务器教程中使用的设备清单,我强烈建议使用网线,这样可以获取最大的网络带宽,点击链接可直达特别优惠购买链接。

建议

可选

在Raspberry Pi上设置Caddy。

1. 开始在Raspberry Pi上安装和设置Caddy之前,我们必须要做的一件事就是确保我们的所有的软件包都是最新的。运行以下两个命令将Raspberry Pi的软件包更新到最新版本。

sudo apt-get update
sudo apt-get upgrade

2. 开始设置Raspberry Pi Caddy网络服务器之前,我们首先还要删除一些Raspbian上默认安装的apache2。如果你知道Raspberry Pi上没有安装apache2,你可以跳过这个命令,继续下一步。

sudo apt-get remove apache2

3. 现在我们可以在终端中运行以下命令来下载和安装Caddy。该命令将抓取并运行在Get Caddy的bash脚本。  脚本会检测你正在运行的操作系统,下载正确版本的Caddy,并进行设置。

curl https://getcaddy.com | bash -s personal

4. 一旦Caddy网络服务器完成下载并安装到我们的Raspberry Pi上,我们就可以开始进行更复杂的设置工作了。首先,在Raspberry Pi上运行下面的命令,在/etc/文件夹中建立一个文件夹,把Caddy的配置文件放在其中。

sudo mkdir /etc/caddy

5. 接下来新建一个文件夹来保存网站。我暂时把它命名为localhost。然而,如果你想利用这个域名,我建议将文件夹名localhost替换为你的网站域名,如labno3.com。

sudo mkdir -p /var/www/localhost

6. 在Raspberry Pi上创建了两个文件夹后,现在可以进入有趣的部分了,那就是制作caddyfile。这个文件是保存Raspberry Pi Caddy网络服务器所有配置的地方。

我把这个文件存放在之前创建的/etc/caddy文件夹中。在Raspberry Pi上运行下面的命令,开始创建caddyfile。

sudo nano /etc/caddy/Caddyfile

7. 在这个文件中写下以下几行文字,这几行文字的作用是定义监听的地址,要服务的文件在哪里,我要利用GZIP压缩在Caddy的HTML输出。

记得用你之前创建的文件夹的名称代替localhost,如果你使用的是域名,也用它代替:80 localhost:80,所以,例如,会像labno3.com一样。

:80 localhost:80 {
    root /var/www/localhost
    gzip
}

一旦你完成了这些工作,你可以通过按CTRL +X,然后按Y,最后按Enter键保存和退出文件。

8. 现在Caddyfile已经设置好了,继续制作一个HTML样本文件,验证是不是工作正常。当安装PHP时,我们将返回到编辑Caddyfile。现在,让我们运行下面的命令来制作测试文件。再次用你之前设置的内容替换localhost。

sudo nano /var/www/localhost/index.html

9. 在这个文件中写点东西,因为我们需要它的目的是确保它的工作正常。在这个教程中,只写这一小段HTML。

<h1>This is a test for labno3.com</h1>

完成后,可以按Ctrl + X然后按Y,然后按Enter键保存并退出。

10. 要在我们的Raspberry Pi上启动Caddy Web Server,我们需要做的就是在终端机上输入以下命令。

cd /etc/caddy
caddy

11. 现在浏览到您的Raspberry Pi的本地IP地址,或者访问Pi上的localhost。如果您不确定您的Raspberry Pi的本地IP地址是什么,您可以利用hostname -I命令。如果您按照我们的教程进行操作,您应该会看到 “This is a test for labno3.com “的文字。

12. 一旦你确认它工作正常,按Ctrl + C终止程序。

为Caddy网站服务器安装PHP

现在可以开始为Raspberry Pi Caddy网络服务器设置PHP了。为此,我们将使用PHP-FPM。

13. 在这一步中,我们将安装PHP-FPM到我们的Raspberry Pi。我们还将安装一些额外的PHP模块,这些模块是许多PHP脚本所需要的。

在进行本教程之前,您需要确保您运行的是Raspbian Buster或更新版本。您可以在我们的指南中学习如何将Raspbian Stretch升级到Buster。

现在运行下面的命令来安装php7.3-fpm和其他几个方便的PHP模块到你的Raspberry Pi。

sudo apt-get install php7.3-fpm php7.3-mbstring php7.3-mysql php7.3-curl php7.3-gd php7.3-curl php7.3-zip php7.3-xml -y

14. 现在PHP-FPM已经安装到我们的Raspberry Pi上了,我们可以继续配置我们的Caddy网络服务器来使用它。

运行以下命令开始编辑文件。

sudo nano /etc/caddy/Caddyfile

15. 在这个文件中,我们要添加以下几行,这几行将告诉Caddy网络服务器利用PHP-FPM作为它的fastcgi处理程序。

它还告诉它读取index.php文件作为默认文件,我们还添加了几行,重写URL请求,使之能与PHP正常工作。

寻找

   root /var/www/localhost
    gzip

添加到下面

    fastcgi / /var/run/php/php7.3-fpm.sock {
        index index.php
    }
    rewrite {
        r .*
        ext /
        to /index.php?{query}
    }

一旦你完成了,保存和退出按CTRL + X,然后Y,最后按Enter键。

16. 现在已经保存了,我们需要修改一些文件的权限,以便PHP-FPM能够解释我们的index.php,我们也需要这样做来设置我们的服务文件。

在您的Raspberry Pi上运行以下Linux权限命令,让www-data用户和组控制我们的网络相关文件,并分配相关的读/写/执行权限。

sudo chown -R root:www-data /etc/caddy
sudo chown www-data:www-data /etc/caddy/Caddyfile
sudo chmod 444 /etc/caddy/Caddyfile
sudo chown -R www-data:www-data /var/www
sudo chmod -R 555 /var/www

17. 现在我们已经纠正了Caddy文件的读/写权限和文件所有权,我们终于也可以创建我们的Caddy服务了。运行以下命令下载并设置Caddy服务。

sudo wget https://raw.githubusercontent.com/mholt/caddy/master/dist/init/linux-systemd/caddy.service
sudo cp caddy.service /etc/systemd/system/
sudo chown root:root /etc/systemd/system/caddy.service
sudo chmod 644 /etc/systemd/system/caddy.service
sudo systemctl daemon-reload

18. 现在,在我们使用新服务启动Caddy之前,让我们制作一个.php文件来运行它。如果你使用的是实际的域名,记得把localhost改掉。

sudo nano /var/www/localhost/index.php

19. 现在在该文件中添加以下一行:

 <?php phpinfo(); ?> 

一旦你都完成了,你可以保存和退出文件,按CTRL +X,然后按y。

20. 现在我们终于可以通过使用我们的新服务来启动我们的Raspberry Pi Caddy网络服务器,并通过运行以下两个命令将其设置为开机时自动启动。如果您不希望它在启动时启动,不要运行第二个命令。

sudo systemctl start caddy.service
sudo systemctl enable caddy.service

21. 现在你应该有一个完全可以使用Caddy的HTTP服务器了,如果你想进一步修改你的Caddy配置,你可以到Caddy Docs页面查看他们的官方文档。

现在,希望您已经成功地设置了您的Raspberry Pi Caddy网络服务器,如果您喜欢这个DIY Pi教程或遇到任何问题,请在下面的评论部分留下评论。

平均: 0 / 5. votes: 0

到目前为止还没有投票!成为第一位评论此文章。

欢迎转载,请留下出处链接:Labno3 » 树莓派搭建网站,如何安装和配置Caddy网络服务器

赞 (1)

评论

2+2=