CDN推送平台

varnish cdn 推送平台


虚拟机IP:172.25.6.1(服务器)

 yum install -y php httpd
 unzip bansys.zip
 mv bansys/* /var/www/html
 vim /var/www/html/config.php
 <?php
 //varnish主机列表
 //可定义多个主机列表
 $var_group1 = array(
                        'host' => array('172.25.6.1'),
                                                'port' => '80',                  
                    );

 //varnish群组定义
 //对主机列表进行绑定
 $VAR_CLUSTER = array(
                         'www.dream.com' => $var_group1,
                     );

 //varnish版本
 //2.x和3.x推送命令不一样
 $VAR_VERSION = "3";

 ?>
 vim /etc/httpd/conf/httpd.conf
 #Listen 12.34.56.78:80
 Listen 8080

 vim /etc/varnish/default.vcl
 acl westos {
         "127.0.0.1";
         "10.10.10.0"/24;
 }

 backend web1 {
   .host = "10.10.10.2";
   .port = "80";
 }

 backend web2 {
   .host = "10.10.10.3";
   .port = "80";
 }

 director lb round-robin {
         { .backend = web1; }
         { .backend = web2; }
 }

 sub vcl_recv {

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

 if (req.http.host ~ "^(www.)?westos.org") {
         set req.http.host = "www.westos.org";
         set req.backend = lb;
 } elsif (req.http.host ~ "^bbs.westos.org") {
         set req.backend = web2;
 } else {
         error 404 "dream cache";
         }
 }
 sub vcl_deliver {
 if (obj.hits > 0) {
         set resp.http.X-Cache = "HIT cache";
 }
 else {
         set resp.http.X-Cache = "MISS cache";
 }
         return(deliver);
 }

 /etc/init.d/varnish restart
 /etc/init.d/httpd restart

/etc/init.d/varnish reload

测试:

在浏览器中访问: 172.25.6.1:8080

在推送内容中输入要清除缓存的页面

选择 HTTP

/index.html 然后确认提交

之前页面的缓存将被清除

猜你喜欢

转载自blog.csdn.net/gd0306/article/details/81268130
cdn