`
xiaolin0199
  • 浏览: 573426 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

Squid清除缓存

 
阅读更多

在这里详述 Squid清除缓存。

 

squid清除Cache命令总结 

 

批量清除Cache的工具:

 

http://www.wa.apana.org.au/~dean/squidpurge/

 

wget http://www.wa.apana.org.au/~dean ... 20040201-src.tar.gz

tar zxvf purge-20040201-src.tar.gz

cd purge

make

 

清除Squid缓存示例:

  1、清除 URL 以“.mp3”结尾的缓存文件(例如 http://www.s135.com/abc.mp3、http://www.s135.com/01/a.mp3)

 

./purge -p localhost:80 -P 1 -se '\.mp3$'

 

  2、清除URL中包含s135.com的所有缓存:

 

./purge -p localhost:80 -P 1 -se 's135.com'

 

  我喜欢将程序推到后台去执行,让它慢慢地去清Squid缓存,同时将输出内容记录到purge.log文件:

 

./purge -p localhost:80 -P 1 -se 's135.com' > purge.log 2>&1 &

 

 

= 方法二 =

 

脚本 clear_squid_cache.sh 

#!/bin/sh
squidcache_path="/var/squid/cache"
squidclient_path="/usr/local/sbin/squidclient"
grep -a -r $1 $squidcache_path/* | strings | grep "http:" | awk -F'http:' '{print "http:"$2;}' > cache_list.txt
for url in `cat cache_list.txt`; do
$squidclient_path -m PURGE -p 80 $url
done

 

注意:请赋予clear_squid_cache.sh可执行权限(命令:chmod +x ./clear_squid_cache.sh)。请确保脚本所在目录可写。

设置:

squidcache_path= 表示squid缓存目录的路径

squidclient_path= 表示squidclient程序所在的路径,默认为squid安装目录下的bin/squidclient

用法:

1、清除所有Flash缓存(扩展名.swf):

./clear_squid_cache.sh swf

2、清除URL中包含sina.com.cn的所有缓存:

./clear_squid_cache.sh sina.com.cn

3、清除文件名为zhangyan.jpg的所有缓存:

./clear_squid_cache.sh zhangyan.jpg

 

直接用命令清除一个图片的缓存

sudo /usr/local/sbin/squidclient -m PURGE -p 3338 http://www.icgoo.net/icgoo/portal_skins/Icgoo_images/topbanner9_24.jpg 

 

 

成功的话,显示如下提示 :

%sudo /usr/local/sbin/squidclient -m PURGE -p 3338 http://www.icgoo.net/icgoo/portal_skins/Icgoo_images/topbanner9_24.jpg/
HTTP/1.0 200 OK
Server: squid/2.7.STABLE9
Date: Tue, 25 Sep 2012 09:37:03 GMT
Content-Length: 0
Expires: Tue, 25 Sep 2012 09:37:03 GMT
X-Cache: MISS from www2.icgoo.net
Via: 1.0 www2.icgoo.net:3338 (squid/2.7.STABLE9)
Connection: close

 

 

 

还有一个

 

 开发经常会要求清squid缓存...

很无奈,只好用squid的PURGE清除缓存

PUGRE是一种有点危险的http请求

squid.conf中加配置如下:

acl AdminBoxes src 127.0.0.1
acl Purge method PURGE
http_access allow AdminBoxes Purge
http_access deny Purge

 

 

//只允许本地PUGRE

 

 

用例如下:

squidclient -h xx.xx.xx.xx -p 80 -U xxx@gmail.com -W password -m PURGE http://img1.sss.com/js/s_code.js

 

 

放在脚本clear_squid_cache.sh中调用:

#!/bin/sh
squidcache_path="/opt/xx/squid/var/cache"
squidclient_path="/opt/xx/squid/bin/squidclient"
grep -a -r $1 $squidcache_path/* | strings | grep "http:" | awk -F'http:' '{print "http:"$2;}'>cache_list.txt
for url in `cat cache_list.txt`; do
$squidclient_path -p 80 -U david.chenfuwei@gmail.com -W tuniu2906 -m PURGE -p 80 $url
done

 

 

这个是张宴的脚本 

 

分享到:
评论

相关推荐

    Shell脚本实现精准清除Squid缓存

    PURGE请求是一种强制清除特定URL缓存条目的方法,它直接发送到Squid服务器,从而确保缓存中的旧数据被立即删除。 需要注意的是,`-h` 参数指定了Squid服务器的IP地址,`-p` 参数指定了Squid的监听端口,`-m PURGE` ...

    清除指定squid缓存文件的脚本代码分享

    可以用squid附带的squidclient工具清除: squidclient -m PURGE -p 80 “http://jb51.net/index.html” 而对于带有参数的网页,例如新浪播客的Flash播放器http://vhead.blog.sina.com.cn/player/outer_player.swf?a

    linux下squid的安装,配置,卸载及SNMP的安装配置

    在Linux环境中,Squid是一个常用的代理服务器和缓存服务器,它可以提高网络访问速度并实现内容过滤。在本文中,我们将详细介绍如何在Linux系统中安装、配置、卸载Squid,以及安装和配置SNMP(简单网络管理协议)。 ...

    Squid中文权威指南(PDF)

    原因可能包括首次请求某个资源、缓存空间不足导致旧内容被清除等。 - **缓存确认**:确保不会向用户返回过期的数据。Squid会在使用缓存前检查原始服务器上的数据是否仍有效。 #### 三、Squid的历史背景 - **Squid...

    squid 管理员指南

    4. **定期清理**:定期清除无用的缓存文件,保持磁盘空间充足。 5. **安全更新**:关注Squid的版本更新,及时升级以修复安全漏洞。 ### 六、Squid的扩展与集成 1. **与其他软件集成**:Squid可以与防火墙、DNS...

    Squid中文权威指南

    1. **缓存策略**:Squid使用LRU(最近最少使用)算法管理缓存空间,根据访问频率和时间来决定何时清除旧内容。 2. **缓存命中率**:通过优化缓存策略,可以提高缓存命中率,例如,设置合适的缓存大小、调整缓存过期...

    Squid 中文权威指南

    - **原因**:首次请求特定资源、缓存空间不足导致缓存项被清除、资源不可达等情况。 - **Cache 确认**:确保 Squid 不向用户返回过时数据的过程。 - **机制**:Squid 会定期向原始服务器确认缓存对象的有效性。...

    Linux1-代理服务器--清除代理服务器上cache记录.doc

    1. 对于使用RPM包安装的Squid服务器,清除缓存的过程如下: 首先,需要停止Squid服务,可以使用命令" squid -k interrupt"或"service squid stop"。执行这个命令后,Squid代理服务器会被安全地中断。 接下来,...

    在varnish、squid、apache、nginx中选出一个更好的缓存服务器

    首先,Varnish和Squid是专门设计为缓存服务器的。Varnish以其高效的“Visual Page Cache”技术著称,它优化了内存管理,避免了频繁的内存与磁盘交互,从而提供更高的性能。此外,Varnish提供了强大的管理接口,允许...

    服务器系统架构分析[文].pdf

    - 修改应用程序变得简单,只需在必要位置添加清除缓存的语句。 - 使用LVS作为前端入口,实现多服务的负载均衡和容错。 4. **主域名与图片域名分离**: - 有助于流量管理和缓存策略,减轻图片服务器的cookie读取...

    对squid中refresh_pattern的一些理解和建议

    - 对于BMP文件和其他静态资源,如果希望它们在缓存中长期存在,直到被主动清除,可以使用`ignore-reload`: ```bash refresh_pattern -i \.bmp$ 1440 90% 129600 reload-into-ims ``` - JavaScript 文件的处理方式...

    NGINX 缓存使用指南1

    ### 清除缓存 对于不支持自动清除特定URL缓存的情况,可以借助第三方模块 ngx_cache_purge 实现。这个模块提供了一个方法,允许你通过HTTP请求来清除指定的缓存内容。 ### 总结 Nginx的缓存功能强大且灵活,不仅...

    Shell脚本批量清除Nginx缓存

    前言*随着整个互联网的发展,产生了无数大大小小的网站,随之而来用户对网站UI和速度体验也在日益加强,对企业或者个人来说,赢得用户...对于网站缓存,目前主流的HTTP加速器主要有Varnish、Nginx_proxy、Squid等,随

    用DNSPod和Squid打造自己的CDN (五) 安装Squid的前期准备

    我们还需要了解如何配置Squid以适应我们的CDN需求,例如设置缓存大小、访问控制策略和负载均衡规则。 总结来说,通过源代码编译Squid不仅提供了更高的灵活性,还允许我们深入了解程序的工作原理,这对于构建和维护...

Global site tag (gtag.js) - Google Analytics