Varnish-CDN推送管理平台

本文介绍如何通过Varnish实现CDN缓存管理,包括配置HTTP服务器、解压并部署管理页面、编辑配置文件及实现缓存的批量清除等步骤。适用于希望了解CDN缓存工作原理的技术人员。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

web界面批量清除缓存

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

配置过程:
1.server1
安装httpd,并编辑httpd配置文件

vim /etc/httpd/conf/httpd.conf

将136行的端口号修改为8080(因为varnish服务已经占用80端口)
在这里插入图片描述
下载php(显示页面)
下载unzip(解压安装包)

yum install php unzip httpd -y

重起服务

/etc/init.d/httpd restart

2.在server1中解压bansys.zip到/var/www/html(指定解压目录-d)
在这里插入图片描述
在这里插入图片描述

unzip bansys.zip -d /var/www/html/
mv /var/www/html/bansys/* /var/www/html

3.编辑config.php

cd /var/www/html/
vim config.php

在这里插入图片描述

4.编辑真机的解析

vim /etc/hosts
写入:
172.25.5.1 server1 www.westos.org bbs.westos.org
172.25.5.3 server3

6.打开浏览器,浏览器中输入172.25.5.1:8080,出现CDN推送管理页面
在这里插入图片描述
7.编写varnish的默认文件vim /etc/varnish/default.vcl

在这里插入图片描述

[root@server1 html]# vim /etc/varnish/default.vcl 
#设置访问控制,即白名单,允许本机和172.25.64网段和推送 
acl westos{
 "127.0.0.1"; ##允许本机访问
  "172.25.5.0"/24; ##允许172.25.5网段的所有主机访问
   }
sub vcl_recv{ 
if(req.request == "BAN"){ 
if(!client.ip ~ westos){ 
error 405 "Not allowed."; 
}
 ban("req.url ~" + req.url);
  error 200 "ban added"; 
  } 
  }
  
  backend web1 { 
  .host = "172.25.5.2";
   .port = "80";
   } 
   
   backend web2 { 
   .host = "172.25.5.3";
    .port = "80"; 
    } 

director lb round-robin {
 { .backend = web1;} 
 { .backend = web2;}
  } 
  sub vcl_recv { 
  if (req.http.host ~ "^(www.)?westos.org") {
   set req.http.host = "www.westos.org"; 
   set req.backend = lb; 
#return (pass);
}elsif (req.http.host ~ "^bbs.westos.org") { 
set req.backend = web2;
 } else { 
 error 404 "westos cache"; 
 } 
 } 

sub vcl_deliver {
 if (obj.hits > 0) {
  set resp.http.X-Cache = "HIT from westos.cache"; 
  } else { 
  set resp.http.X-Cache = "MISS from westos cache"; 
  } 
  return (deliver);
   } 

8.测试

curl -I www.westos.org #第一次miss,则没有缓存到
curl -I www.westos.org #第二次hit,缓存成功(一直为和hit)

CDN推送
推送模式为html,写入推送页面,点击确认提交
在这里插入图片描述

再次测试,则为miss(表示缓存已经清除)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值