Varnish——企业CDN缓存系统(cdn推送平台管理)

CDN 推送:
当后端服务器的dns有更新时,在varnish缓存里应该及时同步后端服务里的内容
搭建步骤:

前提:需要安装有php、unzip、httpd

1.获得php资源,并进行解压

[root@server1 ~]# ls
anaconda-ks.cfg  install.log  install.log.syslog  varnish
[root@server1 ~]# cd varnish/
[root@server1 varnish]# unzip bansys.zip -d /var/www/html/

2.将解压的文件移动到apache默认发布目录下

[root@server1 html]# mv /var/www/html/bansys/* /var/www/html/

3.编辑config.php

 1 <?php
  2 
  3  //varnish主机列表
  4  //可定义多个主机列表
  5  $var_group1 = array(
  6                         'host' => array('172.25.254.1'),
  7                                                 'port' => '8080',                           
  8                     );
  9                                             
 10 
 11  //varnish群组定义
 12  //对主机列表进行绑定
 13  $VAR_CLUSTER = array(
 14                          'www.westos.org' => $var_group1,
 15                      );
 16 
 17 
 18  //varnish版本
 19  //2.x和3.x推送命令不一样
 20  $VAR_VERSION = "3";
 21 
 22 ?>

4.修改httpd端口,避免与varnish发生冲突
在这里插入图片描述
在这里插入图片描述
5.编辑物理机的解析
在这里插入图片描述
测试:物理机
在这里插入图片描述

6.http 模式下需要对varnish的配置文件进行设定

vim /etc/varnish/default.vcl
  7 acl westos {
  8 "127.0.0.1";
  9 "172.25.254.0"/24;
 10 }
 11 backend web1 {
 12   .host = "172.25.254.2";
 13   .port = "80";
 14 }
 15 
 16 backend web2 {
 17   .host = "172.25.254.3";
 18   .port = "80";
 19 }
 20 
 21 director lb round-robin{
 22         { .backend = web1;}
 23         { .backend = web2;}
 24 }
 25 
 26 sub vcl_recv {
 27         if (req.request == "BAN") {
 28                 if (!client.ip ~ westos) {
 29                         error 405 "Not allowed.";
 30         }
 31         ban("req.url~" + req.url);
 32         error 200 "ban added";
 33         }
 34 }
 35 sub vcl_recv {
 36         if (req.http.host ~"^(www.)?westos.org") {
 37                 set req.http.host = "www.westos.org";
 38                 set req.backend = lb;
 39                 #return (pass);
 40 }elsif (req.http.host ~"^bbs.westos.org"){
 41         set req.backend = web2;
 42 }else {
 43         error 404 "ERROR";
 44 }
 45 }
 46 
 47 sub vcl_deliver {
 48 if (obj.hits>0){
 49 set resp.http.X-Cache = "HIT from westos cache";
 50 }
 51 else {
 52 set resp.http.X-Cache = "MISS from westos cache";
 53 }
 54 return (deliver);
 55 }
[root@server1 html]# /etc/init.d/varnish reload

测试:
一般情况下:
在这里插入图片描述
用页面进行推送:
在这里插入图片描述
在这里插入图片描述
测试:(页面信息发生了改变,信息被更新)
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值