如何在CentOS 7上安装Nginx的Varnish Cache 5.1

在本文中,我们将介绍如何在CentOS 7和RHEL7上安装和使用Varnish Cache 5.1作为Nginx Web服务器的前端。

Varnish Cache (也称为Varnish )是一款开源高性能HTTP加速器,旨在加速网络服务器。 在上一篇文章中,我们已经解释了如何在CentOS 7上设置Apache Web服务器的Varnish Cache

在本文中,我们将介绍如何在CentOS 7中安装和使用Varnish Cache 5.1作为Nginx HTTP服务器的前端。本指南还可以在RHEL7上使用。

要求

  1. 安装了Apache的CentOS 7
  2. 具有静态IP地址的CentOS 7

第1步:在CentOS 7上安装Nginx Web服务器

1.首先从使用YUM包管理器的默认CentOS软件仓库安装Nginx HTTP服务器,如下所示。

# yum install nginx
在CentOS 7上安装Nginx

在CentOS 7上安装Nginx

2.安装完成后,立即启动Nginx服务,并使其在系统启动时自动启动。

# systemctl start nginx
# systemctl enable nginx
# systemctl status nginx
启动并启动Nginx

启动并启动Nginx

3.现在修改系统防火墙规则,以使用以下命令允许端口80上的入站数据包。

# firewall-cmd --zone=public --permanent --add-service=http
# firewall-cmd --reload
在防火墙上打开Nginx端口

在防火墙上打开Nginx端口

第2步:在CentOS 7上安装Varnish缓存

4.不幸的是,没有预编译的RPM包,用于最新版本的Varnish Cache 5 (即写入时为5.1.2 ),因此您需要从源文件中构建它,如下所示。

首先,您需要启用EPEL仓库以下命令来安装各种依赖程序包。

# yum install epel-release
# yum install autoconf automake jemalloc-devel libedit-devel libtool ncurses-devel pcre-devel pkgconfig python-docutils python-sphinx graphviz -y
安装Epel和依赖包

安装Epel和依赖包

现在下载Varnish并从源代码编译如下。

# wget https://repo.varnish-cache.org/source/varnish-5.1.2.tar.gz
# tar -zxvf varnish-5.1.2.tar.gz
# cd varnish-5.1.2
# sh autogen.sh
# sh configure
# make
# make install
# ldconfig

一旦从源代码编译了Varnish Cache,主文件将被安装为/ usr / local / sbin / varnishd

使用以下命令检查以确认Varnish安装是否成功。

# /usr/local/sbin/varnishd -V
检查Varnish版本

检查Varnish版本

第3步:配置Nginx使用Varnish缓存

7.在此步骤中,您需要将Nginx配置为使用Varnish Cache。 默认情况下,Nginx在端口80上监听,您需要将默认的Nginx端口更改为8080,以便在Varnish缓存之后运行。

打开Nginx配置文件/etc/nginx/nginx.conf并找到线80 ,并将其更改为监听8080,如服务器块所示,如下面的屏幕截图所示。

# vi /etc/nginx/nginx.conf
配置Nginx监听端口

配置Nginx监听端口

然后保存并关闭文件。

8.使用所有必要的配置,重新启动Nginx服务,如下所示。

# systemctl restart nginx

9.现在,通过键入以下命令手动启动Varnish守护程序,而不是调用systemctl start varnish ,因为从源代码安装时,某些配置不到位。

# /usr/local/sbin/varnishd -a :80 -b localhost:8080
启动Varnish守护进程

启动Varnish守护进程

第4步:测试Nginx上的Varnish缓存

10.最后,测试是否启用了Varnish缓存,并使用下面的cURL命令使用Nginx服务来查看HTTP头。

# curl -I http://localhost
测试Nginx上的Varnish缓存

测试Nginx上的Varnish缓存

您可以从Varnish Cache Github Repository找到更多信息: https//github.com/varnishcache/varnish-cache

在本教程中,我们介绍了如何在CentOS 7上为Nginx HTTP服务器设置Varnish Cache 5.1。使用下面的注释表单向我们发送任何查询或额外的想法。