PHP 清空varnish 缓存的详解(包括指定站点下的)


Posted in PHP onJune 20, 2013

没法清空文件夹内容 只能清空指定链接缓存

<?php
function clearVarnish($ip,$url,$host=null){    $errstr = '';
    $errno = '';
    $varnist_arr = isset($host) ? $host : C('VARNISH_LIST');
    foreach ($varnist_arr as $v){
        $fp = fsockopen ($ip, 2000, $errno, $errstr, 2);
        if (!$fp) {
            return false;
        } else {
            $out = "purge.url $url \r\n";
            fputs ($fp, $out);
            $out = fgets($fp , 4096);
            fclose ($fp);
            return $out;
        }
    }
}
?>

需要注意的是:传入进来的 url是不能带参数的  如:www.baidu.com/?tn=sougou
因为 purge.url 后清空的是 正则表达式 可以改成 www.baidu.com/(.?)sougou 这样就可以了。

当一台varnish 缓存多个站点内容需要清除指定站点URL 或者单纯清除 站点首页时 需使用purge 而不是purge.url

function varnish_purge($ip, $host='', $url) {
        $errstr = '';
        $errno = '';
        $fp = fsockopen ($ip, 2000, $errno, $errstr, 2);
        if (!$fp) {
                return $errno;
        }else {
              if(!empty($host)){
                 $out = "purge req.http.host == {$host} && req.url ~ ^/$ \r\n";
              }else{
                 $out = " purge.url {$url} \r\n";
              }
              fputs ($fp, $out);
              $out = fgets($fp , 4096);
              fclose ($fp);
              return $out;  
        }
}

PHP 相关文章推荐
配置PHP使之能同时支持GIF和JPEG
Oct 09 PHP
IIS6的PHP最佳配置方法
Mar 19 PHP
PHP 采集程序中常用的函数
Dec 09 PHP
php 函数使用方法与函数定义方法
May 09 PHP
php数组去重的函数代码
Feb 03 PHP
关于url地址传参数时字符串有回车造成页面脚本赋值失败的解决方法
Jun 28 PHP
PHP添加Xdebug扩展的方法
Feb 12 PHP
PHP输出九九乘法表代码实例
Mar 27 PHP
用PHP代码给图片加水印
Jul 01 PHP
编写PHP脚本过滤用户上传的图片
Jul 03 PHP
laravel框架使用FormRequest进行表单验证,验证异常返回JSON操作示例
Feb 18 PHP
利用ajax+php实现商品价格计算
Mar 31 PHP
PHP array_multisort() 函数的深入解析
Jun 20 #PHP
PHP操作MongoDB GridFS 存储文件的详解
Jun 20 #PHP
解析Linux下Varnish缓存的配置优化
Jun 20 #PHP
解析PHP中常见的mongodb查询操作
Jun 20 #PHP
PHP 解决session死锁的方法
Jun 20 #PHP
解析PHP可变函数的经典用法
Jun 20 #PHP
使用PHP求两个文件的相对路径
Jun 20 #PHP
You might like
构建简单的Webmail系统
2006/10/09 PHP
php实现的仿阿里巴巴实现同类产品翻页
2009/12/11 PHP
php mysql_real_escape_string函数用法与实例教程
2013/09/30 PHP
PHP中使用Session配合Javascript实现文件上传进度条功能
2014/10/15 PHP
PHP实现支付宝即时到账功能
2016/12/21 PHP
php实现保存周期为1天的购物车类
2017/07/07 PHP
使用PHP+Redis实现延迟任务,实现自动取消订单功能
2019/11/21 PHP
event.srcElement 用法笔记e.target
2009/12/18 Javascript
JS 表单验证大全
2011/11/23 Javascript
jquery offset函数应用实例
2012/11/14 Javascript
把input初始值不写value的具体实现方法
2013/07/04 Javascript
Angular ng-repeat 对象和数组遍历实例
2016/09/14 Javascript
JavaScript中const、var和let区别浅析
2016/10/11 Javascript
Nodejs回调加超时限制两种实现方法
2017/06/09 NodeJs
JS实现基于拖拽改变物体大小的方法
2018/01/23 Javascript
nodejs微信扫码支付功能实现
2018/02/17 NodeJs
react-native滑动吸顶效果的实现过程
2019/06/03 Javascript
JS实现斐波那契数列的五种方式(小结)
2020/09/09 Javascript
Vue3配置axios跨域实现过程解析
2020/11/25 Vue.js
python中global与nonlocal比较
2014/11/21 Python
Centos7 Python3下安装scrapy的详细步骤
2018/03/15 Python
nohup后台启动Python脚本,log不刷新的解决方法
2019/01/14 Python
Python 如何定义匿名或内联函数
2020/08/01 Python
HTML5 textarea高度自适应的两种方案
2020/04/08 HTML / CSS
马来西亚在线购物市场:PGMall.my
2019/10/13 全球购物
企业车辆管理制度
2014/01/24 职场文书
初三政治教学反思
2014/01/30 职场文书
小学六年级学生评语
2014/04/22 职场文书
职务说明书范文
2014/05/07 职场文书
电子信息工程自荐信
2014/05/26 职场文书
上市公司财务总监岗位职责
2015/04/03 职场文书
2016七一建党节慰问信
2015/11/30 职场文书
写作技巧:如何撰写一份优秀的营销策划书
2019/08/13 职场文书
导游词之山西-五老峰
2019/10/07 职场文书
六年级作文之家庭作文
2019/12/12 职场文书
CSS 一行代码实现头像与国旗的融合
2021/10/24 HTML / CSS