教程学院
图像设计 多媒体类 机械制图 办公软件 操作系统 系统编程 网站编程 网页制作 数据库类 网络路由 网络工程 网络安全 考试认证
firefox火狐浏览器下载
酷网学院
CAD
AutoCad Cam350 ProEngineer GCcam MATLAB Unigraphics SolidWorks CAXA Solid3000 Cimatron EdgeCAM
系统
安全 防火墙 病毒 WinXP Win2003 Vista
数据库
编程
网络
精彩图库
  当前位置: 库库中文网 · 负载集群

Linux下运用Squid构建高速地Proxy Server

学院最新推荐文章
教程推荐
『Linux下运用Squid构建高速地Proxy Server』如果文章有大量图片,显示会较慢,请等待图片下载完成
 
点击数: 更新时间:2008-8-12 

一、什么是Proxy Server(代理服务器),Proxy的作用

在真实世界中我们常常会去帮人家办一些事情,例如帮人家交电费什么的,在这种情况下你不是电表的主人,而是代办者(代理者)的身份。在网络世界中Proxy就是相当于那个帮人家交电费的人了,当我们发出连接请求的时候,就会通过Proxy去帮我们直接与目标服务器沟通,帮我们取得资料。    

client通过Proxy Server上网的步骤如下:

①client端向Server发出请求。
②Server收到请求后比较判断Cache中时候存在client想要的资料,如果没有则向远程Server发送数据请求。
③将请求回来的资料先存放到Cache中,再将资料传送给client端。
④当client发出的请求中所需要的资料在Cache中有,则将Cache中的资料直接传送给client端。

虽然当第一访问这向Proxy请求的数据Cache中没有时,Proxy抓取数据后会先保存在Cache中,这样访问速度变慢了,可是第二个访问者以及后来的访问者需要该资料的时候,proxy都不要想远程服务器请求,直接将cache中的资料发送给后来的请求者就行了,这样就减少了连接远程服务器的流量,另外由于proxy是在本地的,所以传输速度也更快。

二、使用Squid在构建Proxy Server

本文中笔者所使用的环境是:

操作系统: Redhat 9.0,内核:2.4.20-31.9,其他系统套件已经通过apt更新到最新了。

1.编译安装Squid

由于Squid对系统硬件要求比较高,所以我们安装的时候应尽量优化。

CODE:

#groupadd squid
#useradd squid
添加suqid用户和用户组

CODE:#export CFLAGES=’-O2 -mcpu=pentium4 -march=pentium4 -mmmx -msse -msse2

可以根据你的CPU选择相应的参数GCC-3.1以上可針對CPU最佳化:

CODE:Pentium2: -O2 -mcpu=i686 -march=i686 -mmmx 
Pentium3: -O2 -mcpu=pentium3 -march=pentium3 -mmmx -msse
Pentium4: -O2 -mcpu=pentium4 -march=pentium4 -mmmx -msse -msse2 
#./configure --prefix=/usr/local/squid --enable-gnuregex --enable-async-io=80 --enable-icmp --enable-kill-parent-hack --enable-snmp --disable-ident-lookups --enable-cahce-digests --enable-arp-acl --enable-err-language="Simplify_Chinese" --enable-default-err-languages="Simplify_Chinese"  --enable-poll --enable-linux-netfilter --enable-underscore
#make
#make install

我个人安装软件都比较喜欢用源码包自己编译,觉得这样知道你自己在做什么,用rpm包好像不知道做什么的就安装好了。下面我们对各个编译参数进行解释,当然你可以通过./configure --help来查看其他的参数,以及各个参数的英文解释。

prefix=/usr/local/squid  :指定软件的安装路径
enable-gnuregex  :由于Squid大量使用字符串处理做各种判断,加入此项能更好的处理。
enable-async-io=80 :这个主要是设置async模式来运行squid,我的理解是设置用线程来运行squid,如果服务器配置很不错,有1G以上内存,cpu使用SMP的方式的话可以考虑设成160或者更高。如果服务器比较糟糕就根据实际情况设了。另外此项还另cache文件支持aufs。
enable-icmp  :加入icmp支持。
enable-kill-parent-hack :关掉suqid的时候,要不要连同父进程一起关掉,这个当然要啦。
enable-snmp  :此选项可以让MRTG使用SNMP协议对服务器的流量状态进行监测,因此必须选择此项,使Squid支持SNMP接口。
disable-ident-lookups  :防止系统使用RFC931规定的身份识别方法。
enable-cahce-digests  :加快请求时,检索缓存内容的速度。
enable-arp-acl  :可以在规则设置中直接通过客户端的MAC地址进行管理,防止客户使用IP欺骗。
enable-err-language="Simplify_Chinese" 和enable-default-err-languages="Simplify_Chinese" :指定出错是显示的错误页面为简体中文
enable-poll  :应启用Poll()函数而不是select()函数,通常而言poll(轮询)比select要好,但configure(脚本程序)已知Poll在某些平台下失效, 若你认为你比configure编译配置脚本程序要聪明的话,可以用这个选项启用Poll。总之就是用这个可以提升性能就是啦。
enable-linux-netfilter :可以支持透明代理
enable-underscore  :允许解析的URL中出现下划先,因为默认squid会认为带下划线的URL地址是非法的,并拒绝访问该地址。

这里我们就安装好了,接下来就是修改配置文件了。

2.修改定义配置参数
下面是我的squid.conf文件

CODE:# NETWORK OPTIONS(有关的网络选项) 
# ------------------------------------------------
http_port 3128  #代理端口
icp_port 3130  #icp端口

# OPTIONS WHICH AFFECT THE NEIGHBOR SELECTION ALGORITHM(作用于邻居选择算法的有关选项)
#---------------------------------------------------
#禁止缓存
hierarchy_stoplist cgi-bin ?
hierarchy_stoplist -i ^https:\\ ?
acl QUERY urlpath_regex -i cgi-bin \? \.asp \.php \.jsp \.cgi
acl denyssl urlpath_regex -i ^https:\\
no_cache deny QUERY
no_cache deny denyssl
#上面几个就是说遇到URL中有包含cgi-bin和以https:\\开头的都不要缓存,
#还有asp、cgi、php等动态脚本也不要缓存,
#因为这些脚本通常都是动态更新的,这样数据不同步。
#还有https://开通的不缓存是因为一般我们进行电子商务交易,
#例如银行付款等都是采用这个的,如果把信用卡号什么缓存那不是很危险。


作者:无 来源:无
】【关闭窗口
·上页:
·下页:
·当前位置: 库库中文网 · 负载集群
相关文章
     操作系统教程 - 负载集群
普通文章代理服务器软件大搜捕
普通文章教学教程:三万元搭建LINUX服务
普通文章RHEL推新版大幅提升虚拟化集群性
普通文章系统管理:基于Linux地负载均衡
普通文章DR配置:Linux Virtual Server负
普通文章对应需求 怎么样选择最合适地RA
普通文章代理服务器软件大搜捕
普通文章Linux操作系统启动httpd失败地处
普通文章Fedora Core Linux系统服务器地
普通文章在Linux操作系统上配置DNS服务器
普通文章Linux服务器前台常出现地错误提
普通文章Linux下运用Squid构建高速地Pro
精彩图片汇集
advertisement
关于站点 - 广告服务 - 联系我们 - 版权隐私 - 免责声明 - 合作伙伴 - 程序支持 - 网站地图 - 返回顶部
网站文本地图
版权所有:库库中文 2005-2007 欢迎各种媒体转载我们的原创作品[转载请注明出处]
copyright © 2005-2008 www.QQGB.com online services. all rights reserved. 蜀ICP备05015578
Template designed by Virus. Optimized for 1024x768 to Firefox,Opera and MS-IE6. Site powered by EQL.
红盾
热爱电脑,热爱生活
拥有电脑,拥有生命
让我们享受拥有电脑的时光