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实现的MySQL通用查询程序
Mar 11 PHP
PHP源代码数组统计count分析
Aug 02 PHP
php 根据url自动生成缩略图并处理高并发问题
Jan 23 PHP
PHP防止post重复提交数据的简单例子
Jun 07 PHP
在html文件中也可以执行php语句的方法
Apr 09 PHP
php制作的简单验证码识别代码
Jan 26 PHP
PHP获取昨天、今天及明天日期的方法
Feb 03 PHP
Netbeans 8.2将支持PHP7 更精彩
Jun 13 PHP
ThinkPHP3.2框架自定义配置和加载用法示例
Jun 14 PHP
laravel 事件/监听器实例代码
Apr 12 PHP
Laravel框架集成UEditor编辑器的方法图文与实例详解
Apr 17 PHP
laravel框架实现为 Blade 模板引擎添加新文件扩展名操作示例
Jan 25 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
实用函数2
2007/11/08 PHP
PHP 引用是个坏习惯
2010/03/12 PHP
PHP错误抑制符(@)导致引用传参失败Bug的分析
2011/05/02 PHP
php生成缩略图填充白边(等比缩略图方案)
2013/12/25 PHP
php中filter函数验证、过滤用户输入的数据
2014/01/13 PHP
php实现cc攻击防御和防止快速刷新页面示例
2014/02/13 PHP
php将12小时制转换成24小时制的方法
2015/03/31 PHP
php生成PDF格式文件并且加密
2015/06/22 PHP
浅析Laravel5中队列的配置及使用
2016/08/04 PHP
CI框架(CodeIgniter)公共模型类定义与用法示例
2017/08/10 PHP
Ubuntu彻底删除PHP7.0的方法
2018/07/27 PHP
input 高级限制级用法
2009/03/26 Javascript
JS小游戏之极速快跑源码详解
2014/09/25 Javascript
如何用jQuery实现ASP.NET GridView折叠伸展效果
2015/09/26 Javascript
jQuery.deferred对象使用详解
2016/03/18 Javascript
JS中this上下文对象使用方式
2016/10/09 Javascript
基于JavaScript实现飘落星星特效
2017/08/10 Javascript
详解wow.js中各种特效对应的类名
2017/09/13 Javascript
vue+elementui 对话框取消 表单验证重置示例
2019/10/29 Javascript
JavaScript实现简易聊天对话框(加滚动条)
2020/02/10 Javascript
微信小程序连接服务器展示MQTT数据信息的实现
2020/07/14 Javascript
[51:39]DOTA2-DPC中国联赛 正赛 Magma vs LBZS BO3 第二场 2月7日
2021/03/11 DOTA
python实现画循环圆
2019/11/23 Python
python GUI库图形界面开发之PyQt5动态加载QSS样式文件
2020/02/25 Python
django 数据库返回queryset实现封装为字典
2020/05/19 Python
python实现按日期归档文件
2021/01/30 Python
pycharm配置python 设置pip安装源为豆瓣源
2021/02/05 Python
CSS3对背景图片的裁剪及尺寸和位置的设定方法
2016/03/07 HTML / CSS
Pure Collection美国官网:来自英国羊绒专家的奢华羊绒
2017/11/19 全球购物
Oasis服装官网:时尚女装在线
2020/07/09 全球购物
师范大学应届生求职信
2013/11/21 职场文书
英语自荐信范文
2013/12/11 职场文书
报告会主持词
2014/04/02 职场文书
小学模范班主任事迹材料
2014/05/13 职场文书
员工开除通知书
2015/04/25 职场文书
婚宴新娘致辞
2015/07/28 职场文书