利用squidclient清理nginx多台缓存服务器cgi程序

简介:
此cgi脚本用perl写的,用于清理多台nginx缓存服务器。
使用方法:将此脚本放在能够执行cgi程序的web服务器上。
打开浏览器访问此脚本,输入需要清理缓存的CSS或者是图片地址,如果要清理多个缓存,请一行输入一个地址即可。
code:
#!/usr/bin/perl
use strict;
use warnings;
use CGI;

my $req = new CGI;
print $req->header;
print << HTML;
< form method = "post" action = "post.cgi" name = "form" > < textarea name = url rows = 5 cols = 60 > < / textarea > < P > < input type = submit > < input type = reset > < / form > HTML my $url = $req->param("url");
  $url = ~tr / + //;
  $url = ~s / % ([a - fA - F0 - 9][a - fA - F0 - 9]) / pack("C", hex($1)) / eg;

my @ url = split / \ n /, $url;
foreach (@ url) {
  my $purge_url = $_;
  if (/ http : \ / \ / (\ S + ?) (? = \ /) /) {
    if ($1) {
      my $squid_req = system("squidclient -h$1 -p80 -mPURGE $purge_url");
      print $squid_req;
    }
  }

}









本文转自 mcshell 51CTO博客,原文链接:http://blog.51cto.com/mcshell/910822,如需转载请自行联系原作者

目录
相关文章
|
8天前
|
缓存 监控 定位技术
|
3月前
|
缓存 应用服务中间件 nginx
Web服务器的缓存机制与内容分发网络(CDN)
【8月更文第28天】随着互联网应用的发展,用户对网站响应速度的要求越来越高。为了提升用户体验,Web服务器通常会采用多种技术手段来优化页面加载速度,其中最重要的两种技术就是缓存机制和内容分发网络(CDN)。本文将深入探讨这两种技术的工作原理及其实现方法,并通过具体的代码示例加以说明。
301 1
|
14天前
|
缓存 Java Shell
Android 系统缓存扫描与清理方法分析
Android 系统缓存从原理探索到实现。
40 15
Android 系统缓存扫描与清理方法分析
|
22天前
|
缓存 关系型数据库 MySQL
服务器磁盘爆满?别慌,教你轻松清理!
服务器磁盘空间告急?别慌!本文将教你如何快速识别并清理占用大量磁盘空间的文件和目录,优化日志文件,释放磁盘空间,恢复系统正常运行。适合服务器管理员和网站运营者。
68 0
 服务器磁盘爆满?别慌,教你轻松清理!
|
1月前
|
存储 缓存 监控
|
1月前
|
缓存 NoSQL Ubuntu
大数据-39 Redis 高并发分布式缓存 Ubuntu源码编译安装 云服务器 启动并测试 redis-server redis-cli
大数据-39 Redis 高并发分布式缓存 Ubuntu源码编译安装 云服务器 启动并测试 redis-server redis-cli
53 3
|
1月前
|
存储 缓存 负载均衡
Nginx代理缓存机制
【10月更文挑战第2天】
62 4
|
1月前
|
前端开发 开发工具 git
如何清理 docker 磁盘空间+修改 Gitea 服务器的 Webhook 设置+前端一些好学好用的代码规范-git hook+husky + commitlint
如何清理 docker 磁盘空间+修改 Gitea 服务器的 Webhook 设置+前端一些好学好用的代码规范-git hook+husky + commitlint
29 5
|
1月前
|
存储 缓存 NoSQL
Nginx缓存
Nginx缓存
26 1
|
1月前
|
应用服务中间件 nginx C++
nginx的cgi模块
nginx的cgi模块
26 0
下一篇
无影云桌面