一,Squid是什么? [1] Squid是一种用来缓冲Internet数据的软件。它是这样实现其功能的,接受来自人们需要下载的目标(object)的请求并适当地处理这些请求。也就是说,如果一个人想下载一web页面,他请求Squid为他取得这个页面。Squid随之连接到远程服务器并向这个页面发出请求。然后,Squid显式地聚集数据到客户端机器,而且同时复制一份。当下一次有人需要同一页面时,Squid可以简单地从磁盘中读到它,那样数据迅即就会传输到客户机上。当前的Squid可以处理HTTP,FTP,GOPHER,SSL和WAIS等协议。但它不能处理如POP,NNTP,RealAudio以及其它类型的东西。 二,squid的正向代理(×××) 客户端因为网络或者其他的问题,不能访问到一台服务器,如果要访问到,则需要通过一台中间的代理服务器,这就是Squid的正向代理。 Squid代理服务器可以访问到这个Apache服务器,并且缓存访问到的内容,再将缓存的内容给客户端看。 步骤1,准备两台虚拟机,一台可以上网,一台不能上上网但是可以连接到可以上网的主机 2,在能够上网的主机上输入yum install -y squid 安装squid服务,并关闭防火墙,此台主机作为服务器 3,在服务端,编辑/etc/squid/squid.conf文件。将56行deny改为allow,去掉62行的注释,重启服务 4,另一台不能上网的虚拟机作为客户端,在客户端打开火狐浏览器,点击左上角的Edit"下的"Perferences",点击最后的"Advanced"下 的"Network",在"Connetion"后点击"Settings"。按照下图输入IP和端口号,IP是Squid服务器的 IP,端口号是3128。 必须选中Use this proxy server for all protocols这一项 完成后进行测试,在客户端浏览器输入www。baidu.com就可以看到这个网页了。但是,访问的不是真实的网页,而是172.25.254.183这台主机的缓存 正向代理客户端访问的是Squid服务器的缓存,适用于客户端不能直接访问目标主页,需要一个中间服务器Squid。 反向代理(squid服务端没有apache) 反向代理是客户端访问的目标是Squid服务器,Squid服务器通过访问有apache的主机并缓存其网页内容,再反馈给客户端,客户端看到的依旧是 Squid服务器的缓存,但是与正向代理不同的是,反向代理中客户端并不知道有apache主机的存在,而直接访问Squid服务器,而且客户端不需要自己进行设置。反向代理通常用于apache的访问加速和减小apache主机的访问压力。 步骤1,将客户端浏览器的修改恢复 2,关闭服务端的apache服务 3,squid服务端(IP为172.25.254.183)没有apache服务

客户端(IP为172.25.254.133)有apache服务,并且开启apache服务

真机(IP为172.25.254.83)有apache服务,并且开启apache服务 4,在服务端编辑/etc/squid/squid.conf,将第59行的"3128"改为"80",并在后面加 上"vhost vport",在第58行添加"cache_peer 172.25.254.133 parent 80 0 proxy-only"。完成后重启"squid"服务。 其中61行是指:通过80端口访问172.25.254.83主机上的内容;

cache_peer:做反向代理的关键字;172.25.254.83:代表后台真正的web服务器;parent:代理服务器的类型。有parent和slibing两种(parent代表父亲;slibing代表兄弟伙伴);proxy-only:代表只做代理; 反向代理不需要在客户端进行配置。 完成上述配置后,在客户端的浏览器中,直接输入要访问的Squid服务器"172.25.254.183",则可以看到Apache主机"172.25.254.83"的主页。 实验二:访问ip,域名均可 该实验同实验一的步骤相同:差别就在于squid服务端配置文件的编辑的内容不同,编辑内容如下(59行-61行) round-robin:表示轮询weight=2:代表权重(2次)。该参数,做轮询时使用。此处的weight参数可以不加,不加此参数时,表示每个IP轮询1次 重启服务 在客户端编辑本地解析文件, 该IP是sqiud服务端的IP,而不是apache主机的IP 测试: 第一次: 刷新 刷新 反向代理目的是通过squid服务,使用户上网更快,同时减轻服务器压力,例如在西安的用户需要访问www。qq。com,不需要去访问很远的深圳服务器,只需访问腾讯在西安的代理服务器,这样就不用经过很多层网关,用户提升了上网速度,同时客户端也减轻了压力