如何在 Ubuntu 20.04 LTS 上安装 Varnish

在本教程中,我们将向您展示如何在 Ubuntu 20.04 LTS 上安装 Varnish。 对于那些不知道的人,Varnish Cache 是一个 Web 应用程序加速器,可以用作您的代理 Apache 网络服务器。 开源软件位于您的网络服务器前面,可以非常快速地提供网络流量。 如果您正在运行多个服务器,Varnish Cache 也可以用作负载平衡器。 它使您的网站真正快速,并将您的网站性能提高到 300 – 1000 倍(意味着 80% 或更多)。

本文假设您至少具备 Linux 的基本知识,知道如何使用 shell,最重要的是,您将网站托管在自己的 VPS 上。 安装非常简单,假设您在 root 帐户下运行,如果不是,您可能需要添加 ‘sudo‘ 到命令以获取 root 权限。 我将向您展示在 Ubuntu 20.04 (Focal Fossa) 上逐步安装 Varnish HTTP 加速器。 对于 Ubuntu 18.04、16.04 和任何其他基于 Debian 的发行版(如 Linux Mint),您可以按照相同的说明进行操作。

在 Ubuntu 20.04 LTS Focal Fossa 上安装 Varnish

步骤 1. 首先,通过运行以下命令确保所有系统包都是最新的 apt 终端中的命令。

sudo apt update
sudo apt upgrade

步骤 2. 安装 Apache 网络服务器。

安装 Apache 使用以下命令的 Web 服务器:

sudo apt install apache2

一旦安装了 Apache 网络服务器已完成,启动网络服务器并使用以下命令检查其状态:

sudo systemctl start apache2
sudo systemctl status apache2

现在我们配置 Apache 要监听 8080 端口,请打开配置文件,如下所示:

sudo nano /etc/apache2/ports.conf

并寻找 Listen 线并设置另一个端口。 在这种情况下,我会选择 8080

Listen 8080

接下来,编辑默认值 Apache 虚拟主机监听端口 8080 到:

sudo nano /etc/apache2/sites-available/000-default.conf

用这个替换 VirtualHost 行:

<VirtualHost *:8080>

Save 并退出配置文件。 要使更改生效,请重新启动 Apache 网络服务器:

sudo apachectl configtest
sudo systemctl restart apache2

如果您的服务器在防火墙后面运行,请确保打开 Apache 端口:

sudo ufw allow http
sudo ufw allow https

步骤 3. 在 Ubuntu 20.04 上安装 Varnish。

Varnish 应该可以安装在标准的 Ubuntu 存储库中。 运行以下命令来安装它:

sudo apt install varnish

接下来,启动服务并使其在系统启动时运行:

sudo systemctl start varnish
sudo systemctl enable varnish

步骤 4. 配置清漆缓存。

我们可以通过编辑 Varnish 配置文件来做到这一点’/etc/default/varnish‘:

cd /etc/varnish/
sudo cp default.vcl default.vcl.bak
sudo nano default.vcl

在后端默认部分中,确保它具有以下配置:

backend default {
.host = "127.0.0.1";
.port = "8080";
}

并且还需要在另一个配置文件中进行更改:

cd /etc/default/
sudo nano varnish

在未注释的部分 DAEMON_OPTS 更改侦听端口并将其保留如下:

DAEMON_OPTS="-a :80 
-T localhost:6082 
-f /etc/varnish/default.vcl 
-S /etc/varnish/secret 
-s malloc,256m"

现在是时候进行最后一项更改了,它位于管理 Varnish 服务的文件中,您必须在其中修改侦听端口:

sudo nano /lib/systemd/system/varnish.service

然后,找到 ExecStart 行并将其替换为以下行:

ExecStart=/usr/sbin/varnishd -j unix,user=vcache -F -a :80 -T localhost:6082 -f /etc/varnish/default.vcl -S /etc/varnish/secret -s malloc,256m

重新启动 Apache 和 Varnish 服务以使更改生效:

sudo systemctl daemon-reload
sudo systemctl restart varnish
sudo systemctl restart apache2

步骤 5. 测试清漆。

测试包括通过以下方式发出 HTTP 请求 curl 并验证它是否由 Varnish 处理:

curl -I 192.168.77.21

输出:

HTTP/1.1 200 OK
Date: Tue, 06 Apr 2021 08:16:21 GMT
Server: Apache/2.4.41 (Ubuntu)
Last-Modified: Tue, 05 Apr 2021 20:12:22 GMT
Vary: Accept-Encoding
Content-Type: text/html
X-Varnish: 2
Age: 0
Via: 1.1 varnish (Varnish/6.2)
ETag: W/"2aa6-5meil4naa0e-gzip"
Accept-Ranges: bytes
Content-Length: 10918
Connection: keep-alive

恭喜! 您已成功安装 Varnish。 感谢您使用本教程在您的 Ubuntu 20.04 LTS Focal Fossa 系统上安装 Varnish 缓存。 如需更多帮助或有用信息,我们建议您查看 清漆官方网站.