Varnish——CDN推送平台管理(web界面批量清除缓存)

官网下载安装包bansys.zip

1.安装php httpd unzip 软件

[root@server1 ~]# yum install -y php
[root@server1 ~]# yum install -y httpd
[root@server1 ~]# yum install unzip -y

注意:如果不安装unzip的话无法解压安装包
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

2.解压推送平台的安装包到httpd的默认发布目录下

[root@server1 ~]# ls
bansys.zip  varnish-3.0.5-1.el6.x86_64.rpm  varnish-libs-3.0.5-1.el6.x86_64.rpm
[root@server1 ~]# unzip bansys.zip -d /var/www/html   #将安装包解压到http默认发布目录下
[root@server1 ~]# cd /var/www/html
[root@server1 html]# ls
bansys
[root@server1 html]# cd bansys/     ##可以看到解压出的目录中的文件都是php文件
[root@server1 bansys]# ls
class_socket.php  config.php  index.php  purge_action.php  static
[root@server1 bansys]# mv * ../    
##将目录中的所有文件移动到上一层目录也就是/var/www/html中,
因为浏览器中访问的是httpd的默认发布目录,如果不将文件移出来的话
在浏览器中就要加上目录名

[root@server1 bansys]# ls
[root@server1 bansys]# cd ..
[root@server1 html]# ls
bansys  class_socket.php  config.php  index.php  purge_action.php  static
[root@server1 html]# rm -fr bansys/    ##删除原来的目录
[root@server1 html]# ls
class_socket.php  config.php  index.php  purge_action.php  static

在这里插入图片描述
在这里插入图片描述
注意:这时解压出来的时一个目录,我们为了访问的时候方便将目录中的文件移动到/var/www/html下,并且删除原来的bansys目录,如果在这里不做这一步的话在后面访问的时候就需要在ip后加上目录名

3.编辑config.php文件,将文件中不需要的东西删除,将ip改为server1的ip,域名改为 www.westos.org

[root@server1 html]# vim config.php
config.php文件中的内容
<?php
 //varnish主机列表
 //可定义多个主机列表
 $var_group1 = array(
                        'host' => array('172.25.22.1'),
                                                'port' => '8080',
                    );
 //varnish群组定义
 //对主机列表进行绑定
 $VAR_CLUSTER = array(
                         'www.westos.org' => $var_group1,
                     );  
 //varnish版本
 //2.x和3.x推送命令不一样
 $VAR_VERSION = "3";
?>

在这里插入图片描述
注意:这里定义的主机列表中有端口的设置,这个端口时httpd的端口,默认是80,但是我们的80端口已经被varnish占用,所以现在让httpd使用8080端口

4.修改httpd的默认端口,开启服务,查看端口是否开启

[root@server1 html]# vim /etc/httpd/conf/httpd.conf 
[root@server1 html]# /etc/init.d/httpd start
Starting httpd: httpd: Could not reliably determine the server's fully 
qualified domain name,
using 172.25.22.1 for ServerName
                                                           [  OK  ]

在这里插入图片描述
在这里插入图片描述

[root@server1 html]# netstat -tnlp

在这里插入图片描述
5.打开浏览器测试是否能访问

172.25.22.1:8080

在这里插入图片描述
6.编辑varnish的默认配置文件,添加访问控制(那个网段的ip可以访问),编辑完后reload服务

[root@server1 html]# cd /etc/varnish/
[root@server1 varnish]# ls
default.vcl  secret
[root@server1 varnish]# vim default.vcl 
[root@server1 varnish]# /etc/init.d/varnish reload

在这里插入图片描述
文件中添加的内容如下:

acl westos {
        #设置访问控制
        "127.0.0.1";
        "172.25.22.0"/24;
}

sub vcl_recv {
if (req.request == "BAN") {
if (!client.ip ~ westos) {
error 405 "Not allowed.";
}
ban("req.url ~ " + req.url);
error 200 "ban added";
}
}

在这里插入图片描述
注意: 上一实验中为了测试效果没有保留缓存,在这一实验中将return(pass);注释掉,让varnish缓存

7.利用推送平台管理之前可以看到访问都是HIT从缓存中访问
在这里插入图片描述
8.在推送平台中清除所有缓存

.*$

在这里插入图片描述
在这里插入图片描述
再次访问出现MISS,之后的又都变成HIT
在这里插入图片描述

9.访问 www.westos.org/index.html 第一次是MISS状态,之后的都是HIT
在这里插入图片描述
10.在推送管理平台清除index.html的缓存

/index.html

在这里插入图片描述
在这里插入图片描述
再次访问时出现MISS,在这之后的都是HIT

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/qq_44224894/article/details/89303610