如何在 CentOS 7 上使用 Apache 安装 Varnish Cache如何在 CentOS 7 上使用 Apache 安装 Varnish Cache如何在 CentOS 7 上使用 Apache 安装 Varnish Cache如何在 CentOS 7 上使用 Apache 安装 Varnish Cache
  • 文章
  • 正则表达式
    • 工具
  • 登录
找到的结果: {phrase} (显示: {results_count} 共: {results_count_total})
显示: {results_count} 共: {results_count_total}

加载更多搜索结果...

搜索范围
模糊匹配
搜索标题
搜索内容
发表 admin at 2025年2月28日
类别
  • 未分类
标签

如何在 CentOS 7 上使用 Apache 安装 Varnish Cache

本教程适用于这些操作系统版本

  • 中央操作系统 8
  • 中央操作系统 7

在此页

  1. 我们将做什么
  2. 先决条件
  3. 第 1 步 - 在 CentOS 7 上安装和配置 Apache
  4. 第 2 步 - 在端口 8080 上配置 Apache
  5. 第 3 步 - 在 CentOS 7 上安装 Varnish
  6. 第 4 步 - 将 Varnish 配置为 Apache 的反向代理
  7. 第 5 步 - 配置防火墙
  8. 第 6 步 - 测试
  9. 参考资料

Varnish 是一个专注于 HTTP 缓存的代理服务器。它被设计为 HTTP 加速器,可以充当您的 Web 服务器 Apache 或 Nginx 的反向代理。 Varnish 已被用于高知名度和高流量的网站,包括维基百科、卫报和纽约时报。

在本教程中,我们将向您展示如何安装和配置 Varnish HTTP 加速器作为 Apache Web 服务器的反向代理。真正的网络服务器 Apache 会运行在非标准的 HTTP 端口下(运行在 8080 端口)。 Varnish 将作为 HTTP 端口 80 上的反向代理运行。对于本指南,我们将使用 CentOS 7 服务器。

我们将要做什么

  1. 在 CentOS 7 上安装 Apache
  2. 在端口 8080 上配置 Apache
  3. 在 CentOS 7 上安装 Varnish
  4. 将 Varnish 配置为 Apache 的反向代理
  5. 配置防火墙
  6. 测试

先决条件

  • CentOS 7 服务器
  • 根权限

第 1 步 - 在 CentOS 7 上安装和配置 Apache

我们将从 CentOS 7 存储库安装 Apache/httpd Web 服务器,然后配置将在端口 8080 上运行的服务器。

使用下面的 yum 命令安装 Apache/httpd。

yum -y install httpd

安装完成后,启动 httpd 服务并使用以下命令使其在系统启动时运行。

systemctl start httpd
systemctl enable httpd

所以 httpd 服务现在正在运行。使用 netstat 或 curl 命令检查它,如下所示。

netstat -plntu
curl -I localhost

这样,Apache/httpd 网络服务器就安装好了。

第 2 步 - 在端口 8080 上配置 Apache

在此步骤中,我们将配置 Apache/httpd Web 服务器在端口 8080 上运行。为此,我们必须首先编辑配置文件 httpd.conf。

转到 Apache 配置目录并编辑 httpd.conf 文件。

cd /etc/httpd/
vim conf/httpd.conf

在 Listen 行中将默认端口 80 更改为 8080。

Listen 8080

保存并退出。

现在测试配置并确保没有错误。然后重新启动 apache/httpd 服务。

apachectl configtest
systemctl restart httpd

现在再次使用 netstat 检查,并确保 Web 服务器正在端口 8080 上运行。

netstat -plntu

第 3 步 - 在 CentOS 7 上安装 Varnish

在这一步中,我们将安装 Varnish 高性能 HTTP 加速器。它在 EPEL(企业 Linux 的额外软件包)存储库中可用,因此我们需要在安装 Varnish 之前安装该存储库。

使用以下命令安装 EPEL 存储库。

yum -y install epel-release

现在使用下面的 yum 命令从 EPEL 存储库安装 Varnish。

yum -y install varnish

安装完成后,启动 Varnish 并使用下面的 systemctl 命令将其添加为在系统启动时启动。

systemctl start varnish
systemctl enable varnish

默认情况下,Varnish 将使用端口 6081 和 6082。使用下面的 netstat 命令检查它。

netstat -plntu

并确保我们获得默认的 Varnish 端口,如下所示。

第 4 步 - 将 Varnish 配置为 Apache 的反向代理

所以 Varnish 安装好了,现在我们将把它配置为 Apache Web 服务器的反向代理。默认情况下,varnish 将在 HTTP 端口 80 上运行。

进入Varnish配置目录,编辑default.vcl中的默认配置。

cd /etc/varnish
vim default.vcl

定义默认后端部分。我们正在使用运行在端口 8080 上的 Apache Web 服务器,因此配置如下。

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

保存并退出。

接下来,将 Varnish 配置为使用 HTTP 端口 80 运行。编辑 Varnish 配置目录中的 varnish.params 文件。

vim varnish.params

在此文件中,将 VARNISH_LISTEN_PORT 行的值更改为 HTTP 端口 80。

VARNISH_LISTEN_PORT=80

保存并退出。

现在重新启动 Varnish 并使用 netstat 命令检查统计信息。

systemctl restart varnish
netstat -plntu

确保您的结果与下图类似。

Varnish HTTP Accelerator 已安装,现在它充当 Apache Web 服务器的反向代理。

第 5 步 - 配置 Firewalld

在此步骤中,我们将安装 Firewalld 并打开新的 HTTP 和 HTTPS 端口。

使用以下 yum 命令安装 Firewalld。

yum -y install firewalld

现在启动该服务并使其在系统启动时自动运行。

systemctl start firewalld
systemctl enable firewalld

接下来,使用 firewalld-cmd 命令为 HTTP 和 HTTPS 请求打开新端口,如下所示。

firewall-cmd --add-service=http --permanent
firewall-cmd --add-service=https --permanent

重新加载防火墙配置。

就是这样。 Firewalld 配置已经完成。

第 6 步 - 测试

要测试 Varnish,首先执行以下 curl 命令。

curl -I hakase-labs.co

在输出中,确保您获得类似于以下屏幕截图中所示的 HTTP 标头。

接下来,从浏览器测试 Varnish。为此,打开您的网络浏览器并输入服务器 URL 或地址。

http://hakase-labs.co

确保它按如下方式工作。

注意:如果出现 403 Forbidden,则需要在 /var/www/html 目录下创建一个 index.html 文件。

cd /var/www/html/
echo '<h1><center> Varnish- Apache - hakase-labs</center></h1>' > index.html

继续,使用下面的命令测试清漆日志。

varnishncsa

您将获得清漆的访问日志。

就是这样。 Varnish HTTP 加速器已安装,现在作为 Apache Web 服务器的反向代理运行。

参考

  • https://varnish-cache.org/

©2015-2025 艾丽卡 support@alaica.com