cache_peer和cache_peer_domain详解

转载 2015年07月07日 23:07:23
acl allowuser 192.168.1.1/32
cache_peer 192.168.1.50 parent 81 0 no-query originserver weight=1 name=a
cache_peer 192.168.1.50 parent 82 0 no-query originserver weight=1 name=b
cache_peer 192.168.1.50 parent 80 0 no-query originserver weight=1 name=c

cache_peer_domain a
 www.serverA.com
cache_peer_domain b www.serverB.com
cache_peer_domain c www.serverC.com

#以上六行配置表示:
#从客户端过来的请求,如果是
 www.serverA.com则Squid向 Server 192.168.1.50的端口81发送请求;
#
从客户端过来的请求,如果是
 www.serverB.com则Squid向 Server 192.168.1.50的端口82发送请求;
#从客户端过来的请求,如果是 www.serverC.com则Squid向 Server 192.168.1.50的端口80发送请求;
#换句话说:设定不同域名转发到不同的cache_peer上,如果没有这项.不同的域名可能被分发到同一台服务
 器(或同一台服务器的端口)上.
#name=a表示给cache_peer一个别名
 
cache_peer_access a allow all
cache_peer_access b allow all
cache_peer_access c allow all
#设置访问权限,允许所有外部客户端访问 a b c
#如果是cache_peer_access a allow allowuser
#表示只允许allowuser访问 www.serverA.com
 
 
另一个例子:
acl user1 src 192.168.2.68/32
acl user2 src 192.168.2.94/32
#定义两个user IP

cache_peer 192.168.2.172 parent 80 0 no-query no-digest originserver name=www1  sourcehash
cache_peer 192.168.2.173 parent 81 0 no-query no-digest originserver name=www2  sourcehash
cache_peer_domain www1 www.domain.com
cache_peer_domain www2 www.domian.com
#表明对www.domian.com的请求,squid向192.168.2.172的80端口和192.168.2.173的81端口发出请求
cache_peer_access www1 allow user1
cache_peer_access www2 allow user2
#允许user1访问192.168.2.172的80端口
#允许user2访问192.168.2.173的81端口 
 
设置子父代理的cache_peer:

如果要设置父级的代理服务器,例如proxy.test.edu.cn那么可以这样配置

在#cache_peer hostname type 3128 3130 之下加入

cache_peer proxy.test.edu.cn parent 3128 3130 no-query no-netdb-exchange

 

如果要设置同级的代理服务器,如:192.168.1.41 192.168.1.42则可以这样来配置

cache_peer 192.168.1.41 sibling 3128 3130 proxy-only

....

注意目前各单位施行代理服务器分级管理,设置父级代理服务器,还必须取得上层单位的同意

 

说明:

(1)命令cache_peer的定义格式是:

cache_peer hostname type 3128 3130

hostname 是用来指定获取缓冲的PROXY主机的名字

type 是PROXY主机的类型,有以上PARENT SIBLING两种

3128:HTTP_PORT

3130:ICP_PORT

 

(2)附加配置选项(注意应为小写,配置时)

NO-QUERY:不做查询操作,直接获取数据

NO-NETDB-EXCHANGE:代理服务器之间不交互信息

NO-DIGEST:代理服务器之间不做摘要表查询,直接用ICP协议沟通(同级代理)

PROXY-ONLY:直接获取对方缓冲,转交给代理服务器的客户端,而不存入本地

ROUND-ROBIN:如果设置数部上层服务器,那么轮流查询父级服务器

LOGIN=USER:PASSWD:要求对方做帐号及密码验证,例如

cache_peer 192.168.1.41 sibling 3128 3130 login=kao:123456


举例:
以下为squid1机器上的配置

icp_port 3130
acl domian dst www.domian.com
acl squid2 src xx.xx.xx.xx
acl squid3 src xx.xx.xx.xx

http_access allow  squid2
http_access allow  squid3

1.配置 squid2、squid3 为其邻居,当 squid1 在其缓存中没有找到请求的资源时,通过 ICP 查询去其邻居中取得缓存
cache_peer squid2 sibling 80 3130
cache_peer squid3 sibling 80 3130

2.squid1的三个父节点,originserver 参数指明是源服务器,round-robin 参数指明 squid 通过轮询方式将请求分发到其中一台父节点;squid 同时会对这些父节点的健康状态进行检查,如果父节点down了,那么 squid 会从剩余的 origin 服务器中抓取数据。
cache_peer 192.168.1.1 parent 8080 0 no-query originserver round-robin name=www1
cache_peer 192.168.1.2 parent 8080 0 no-query originserver round-robin name=www2
cache_peer 192.168.1.3 parent 8080 0 no-query originserver round-robin name=www3
 
3.将 www.domian.com 域的请求通过 RR 轮询方式转发到三个父节点中的一个。
cache_peer_domain www1 domian
cache_peer_domain www2 domian
cache_peer_domain www3 domian

4.always_direct会导致所有请求都直接发送到原始服务器。而不会去查询sibling,对于www.domian.com这个域名不需要直接出去,而是要询问sibling。其余的域名,squid依然通过hosts去进行转发
always_direct allow !domain


squid配置-cache_peer和cache_peer_domain两种配置方式

squid配置-cache_peer和cache_peer_domain的两种方式 反向代理单IP多域名 cache_peer 192.16...
  • joeyon
  • joeyon
  • 2015年01月05日 09:37
  • 1157

squid配置-cache_peer和cache_peer_domain详解

acl allowuser 192.168.1.1/32 cache_peer 192.168.1.50 parent 81 0 no-query originserver weight=1 n...
  • myweishanli
  • myweishanli
  • 2014年08月07日 14:57
  • 707

squid中cache_peer的sibling用法

提 高squid命中率和使用效率是每个系统管理员都希望的一件事,毕竟在现有资源中榨干每一份的资源是必须滴,使用nginx的按url做定向投递,自然能 提高squid的命中和效率,但毕竟公司目前没有...
  • huithe
  • huithe
  • 2010年11月26日 22:12
  • 2674

equals和==的区别及详解

equals和==的区别 java中equals();方法的源代码是 public boolean equals(Object obj){ return (this=obj); } equals方法只...
  • CISHENGBUHUAN666666
  • CISHENGBUHUAN666666
  • 2017年04月29日 20:16
  • 687

第10章 与其他Squid会话

原贴:http://www.opendigest.org/article.php/296 第10章 与其他...
  • chinalinuxzend
  • chinalinuxzend
  • 2007年09月14日 00:30
  • 2971

OSPF和IS-IS详解 笔记

OSPF和IS-IS详解 OSPF和IS-IS详解 2014.5 目录 1 链路状态路由协议之由来2 链路状态路由协议基本知识3 消息类型4 寻址、邻居发现和...
  • cteng
  • cteng
  • 2014年10月07日 23:00
  • 1027

乐观锁和悲观锁详解

一、为什么需要锁(并发控制)?     1、在多用户环境中,在同一时间可能会有多个用户更新相同的记录,这会产生冲突,这就是著名的并发性问题,为了解决并发性冲突问题,通常就会用到锁。典型的冲突有以下两种...
  • A123638
  • A123638
  • 2016年09月02日 14:15
  • 326

《Java和Android开发实战详解》

《Java和Android开发实战详解》 《Java和Android开发实战详解》把Java和Android开发技术结合起来讲解,可以使读者更快适 应Android的开发。全书包括...
  • chengying332
  • chengying332
  • 2015年02月17日 13:06
  • 685

Android 5.0+ 解析(三)Palette类

Android 5.0+ 解析(三)Palette类
  • caihongdao123
  • caihongdao123
  • 2016年05月27日 15:47
  • 7677

[Jave]详解"equals方法"和"==操作符"

总纲其实equals()方法 和 ==操作符的区别就是下面两句话: 操作符 == 是用来比较两个引用是否指向堆内存当中的同一块地址 equals(Object obj) 方法是用来比较两个对象的值是否...
  • humanking7
  • humanking7
  • 2015年02月07日 00:27
  • 1638
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:cache_peer和cache_peer_domain详解
举报原因:
原因补充:

(最多只允许输入30个字)