一,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服务linux
客户端(IP为172.25.254.133)有apache服务,而且开启apache服务web
真机(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主机上的内容;apache
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,不须要去访问很远的深圳服务器,只需访问腾讯在西安的代理服务器,这样就不用通过不少层网关,用户提高了上网速度,同时客户端也减轻了压力浏览器