varnish4清楚缓存方法主要有,通过varnishadm 管理,或vcl配置。
其中vcl配置可以让客户端手动请求清楚缓存,以保证局部数据及时更新,而不用重启varnish服务器。
配置方法:
#允许清除缓存IP集 acl purge_ip{ "127.0.0.1"; "localhost"; } sub vcl_recv { if(req.method ~ "update"){ if(client.ip ~ purge_ip){ return(purge);//清除缓存 } return (synth(404,"Not Found")); } } sub vcl_purge{ return (synth(200,"success")); }
重启varnish后,打开火狐浏览器,随便进入一个缓存页面,鼠标右键查看源代码,再选择网络。
点击第一个请求信息。
点击 编辑和重发
修改请求类型为 PURGE 再点击 发送
查看返回状态,如果成功则成功清除缓存,可以按 F5 刷新页面,查看新内容。
注意:varnish4 与varnish3 配置方式不一样,所以此配置方式只能使用在 varnish4,varnish3使用方式差不多,是在vcl_hit中使用 purge; 命令然后返回一个 error 200 "success" , vcl_recv 应该使用 return(lookup);,再就是不要忘记添加 reg.request==“PURGE” 判断。
本文出自 “秋风扫落叶” 博客,请务必保留此出处http://php2012web.blog.51cto.com/5585213/1686810
原文地址:http://php2012web.blog.51cto.com/5585213/1686810