- 浏览: 141566 次
- 性别:
- 来自: 佛山
文章分类
最新评论
-
C393416691:
JNA—JNI终结者,java调用dll、ocx、so最简单的方法 -
C393416691:
JNA—JNI终结者,java调用dll、ocx、so最简单的方法 -
C393416691:
[flash=200,200][url][img][list] ...
JNA—JNI终结者,java调用dll、ocx、so最简单的方法 -
zhdycn:
感谢 LZ 的分享 都把核心 接口 都介绍了一下 一看你 ...
Spring3 MVC -
naily:
naily 写道很非常详细,对于了解spring mvc很有帮 ...
Spring3 MVC
1.在squid.conf文件里添加
acl Purge method PURGE acl Localhost src 192.168.1.1/10 //你的前端服务器IP地址,如Nginx服务器IP http_access allow Purge Localhost http_access deny Purge
2.squid.properties
servers=192.168.1.1:3128
3.PurgeManager.java
import java.io.BufferedReader; import java.io.IOException; import java.io.InputStream; import java.io.InputStreamReader; import java.io.OutputStream; import java.io.OutputStreamWriter; import java.io.PrintWriter; import java.net.Socket; import java.util.Properties; public class PurgeManager { String[] servers = {}; private static PurgeManager pm = null; public synchronized static PurgeManager getInstance() { if (pm == null) { pm = new PurgeManager(); } return pm; } private PurgeManager() { InputStream inputStream = this.getClass().getResourceAsStream("squid.properties"); Properties p = new Properties(); try { p.load(inputStream); } catch (IOException e1) { e1.printStackTrace(); } String ipstr = p.getProperty("servers"); System.out.println("ipstr=========" + ipstr); if (ipstr != null) { servers = ipstr.split(";"); } try { inputStream.close(); } catch (IOException e) { e.printStackTrace(); } } public String purgeSquid(String url) { String msg = ""; System.out.println("PURGE " + url); for (int i = 0; i < servers.length; i++) { String t[] = servers[i].split(":"); if (t.length == 1) doOneSquid(t[0], url); else doOneSquid(t[0], url, Integer.parseInt(t[1])); } return msg; } private String doOneSquid(String serverip, String purl) { return doOneSquid(serverip, purl, 80); } private String doOneSquid(String serverip, String purl, int port) { String message = ""; // 获取hostname String hname = parseHostNameFromUrl(purl); try { Socket s = new Socket(serverip, port); InputStream is = s.getInputStream(); OutputStream os = s.getOutputStream(); BufferedReader in = new BufferedReader(new InputStreamReader(is)); PrintWriter out = new PrintWriter(new OutputStreamWriter(os), true); String state = "PURGE " + purl + " HTTP/1.1"; out.println(state); out.println("HOST:" + hname); out.println(); String downstr; while ((downstr = in.readLine()) != null) { System.out.println(downstr); message += downstr + "<br>"; } s.close(); } catch (Exception e) { e.printStackTrace(); message += "<br>操作失败!"; } return message; } private String parseHostNameFromUrl(String purl) { if (purl == null) return ""; int idx1 = 0; int idx2 = 0; if (purl.toLowerCase().startsWith("http://")) { idx1 = 7; } idx2 = purl.indexOf("/", idx1); if (idx2 == -1) idx2 = purl.length(); return purl.substring(idx1, idx2); } public static void main(String[] args) { //System.out.println(PurgeManager.getInstance(). //parseHostNameFromUrl("db.com")); PurgeManager.getInstance().purgeSquid(http://192.168.1.1:3128/index.html); } }
发表评论
-
linux java sh
2015-11-25 17:06 598#! /bin/sh if [ -z "$ ... -
CentOS 6.6安装配置supervisor进程管理工具
2015-09-24 11:06 12481. Supervisor是一个C/S系统,它可以在类uni ... -
DenyHosts防SSH暴力破解
2014-04-14 22:21 663DenyHosts官方网站为:http://denyhost ... -
Centos 6配置SSH SFTP服务及权限设置
2014-04-01 18:03 1692从技术角度来分析,几个要求: 1、从安全方面看,sftp会 ... -
构建自已的Linux系统
2013-06-20 18:03 0实验环境:ubuntu 12.04 LTS 内核版本:li ... -
同步rsyncd
2013-04-28 16:34 0一、服务器端安装 1. ... -
linx服务安装配置
2013-04-28 16:33 0一、前提环境 1、安装常用依赖软件包: y ... -
mount --bind 的妙用
2013-04-19 21:42 1157文章转自:http://www.cnitblog.com/g ... -
linx服务安装配置
2013-04-13 20:09 0一、前提环境 1、安装常用依赖软件包: yu ... -
linux下查看各软件编译参数
2013-03-17 02:10 916在开发的过程中经常会遇到需要重新编译的问题,遇到这种情况该 ... -
Linux系统中查看日志的常用命令
2013-02-18 21:08 1360从nginx日志中得到访问量最高前5个IPcat acce ... -
LiveCD:学习Linux的好工具
2012-08-02 17:12 0下载地址:http://blog.opendigest. ... -
Linux 系统命令及其使用详解(大全)
2012-05-25 09:09 846cat cd chmod chown ... -
关于SVN网址
2011-10-23 11:33 0SVN管理规定 http://wenku.baidu.com ... -
zookeeper使用原理探究
2011-03-17 15:59 1183zookeeper介绍zookeeper是一个为分布式应用提供 ... -
cas 单点登录配置速成
2011-03-11 16:50 1530原理描述 子系统所有请求被CAS过滤器拦截(web.xml中定 ... -
如何理解Squid refresh_pattern
2011-03-10 13:04 1084refresh_pattern的作用:用于确定一个页面进入ca ... -
squid工作原理及安装配置实例指南
2011-03-09 11:32 2387目录: 一.测试安装环 ... -
CentOS 5.5 中 Apache、MySQL、PHP 的安装信息
2011-03-04 15:00 1190CentOS5.5 中已经集成安装 ... -
管理rpm安装包
2011-02-28 15:11 725rpm -qpl xxxxxx.rpm 1.如何安装rpm软件 ...
相关推荐
suqid 缓存服务器整理的相关内容,可以参考的。适合于centos7系统的
文档为squid缓存服务的配置文档,系统为CentOS部署,本人自己部署成功后整理的文档,绝对清晰。
web缓存技术,cache Squid 配置 安装
利用Linux和Squid建立缓存代理服务器的优化方案研究.pdf
NULL 博文链接:https://baobeituping.iteye.com/blog/1331539
清理squid缓存,直接执行sh 脚本名,不过还需要知道要清理的squid服务器列表和需要清理的url列表
squid缓存服务器的配置,一般运营商所使用的代理服务器
WEB缓存功能对于一个规模较大、访问繁忙的网络来说是有必要的,IBM网站上的一篇文章,详细分析介绍了WEB缓存给上网用户带来的好处: http://www-900.ibm.com/developerWorks/cn/web/webcachinga/index.shtml ...
squid 强制缓存动态页面.docx
工具可以批量更新指定URL缓存。 可以查看服务器状态 方便,简单
squid for windows 2.7 以上版本
squid缓存网站数据教程.zip
squid:Squid Web代理缓存
Squid缓存代理服务器的安装与配置(普通代理 透明代理 反向代理)
squid会根据用户请求网页的URL进行哈希,生成缓存文件,存放在某一个目录中。squid启动之后,将在内存中建立一个哈希表,记录硬盘中缓存文件配置的情形。 对于类似http://jb51.net/index.html之类的网页,squid只会...
Squid cache(简称为Squid)是一个流行的自由软件(GNU通用公共许可证)的代理服务器和Web缓存服务器
Squid是一个缓存internet数据的一个软件,它接收用户的下载申请,并自动处理所下载的数据。也就是说,当一个用户想要下载一个主页时,它向Squid发出一个申请,要Squid替它下载,然后Squid 连接所申请网站并请求该...
主要介绍了squid3缓存服务器编译安装和高命中率配置示例,本文讲解了下载squid、编译安装squid、配置squid等内容,需要的朋友可以参考下
web 缓存技术squid ,chm格式,英文文档