Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1759366
  • 博文数量: 226
  • 博客积分: 8233
  • 博客等级: 中将
  • 技术积分: 3514
  • 用 户 组: 普通用户
  • 注册时间: 2009-04-18 22:54
文章分类
文章存档

2019年(3)

2018年(7)

2017年(2)

2012年(8)

2011年(67)

2010年(45)

2009年(94)

分类: WINDOWS

2011-05-27 13:05:48

Squid 2.5 for windows

Squid是一个缓存internet数据的一个软件,它接收用户的下载申请,并自动处理所下载的数据。也就是说,当一个用户想要下载一个主页时,它向Squid发出一个申请,要Squid替它下载,然后Squid 连接所申请网站并请求该主页,接着把该主页传给用户同时保留一个备份,当别的用户申请同样的页面时,Squid把保存的备份立即传给用户,使用户觉得速度相当快。

  对于Web用户来说,Squid是一个高性能的代理缓存服务器,可以加快内部网浏览Internet的速度,提高客户机的访问命中率。Squid不仅支持协议,还支持等协议。和一般的代理缓存软件不同,Squid用一个单独的、非模块化的、I/O驱动的进程来处理所有的客户端请求。
  Squid将数据元缓存在内存中,同时也缓存查寻的结果,除此之外,它还支持非模块化的DNS查询,对失败的请求进行消极缓存。Squid支持SSL,支持访问控制。由于使用了ICP,Squid能够实现重叠的代理阵列,从而最大限度的节约带宽。
  Squid由一个主要的服务程序Squid,一个DNS查询程序dnsserver,几个重写请求和执行认证的程序,以及几个管理工具组成。当Squid启动以后,它可以派生出指定数目的dnsserver进程,而每一个dnsserver进程都可以执行单独的DNS查询,这样一来就大大减少了服务器等待DNS查询的时间。
  Squid的另一个优越性在于它使用访问控制清单(ACL)和访问权限清单(ARL)。访问控制清单和访问权限清单通过阻止特定的网络连接来减少潜在的Internet非法连接,可以使用这些清单来确保内部网的主机无法访问有威胁的或不适宜的站点。
  Squid对硬件的要求是内存一定要大,不应小于128M,硬盘转速越快越好,最好使用服务器专用 硬盘,处理器要求不高,400MH以上既可。


首先我们要下载安装程序

地址:

解压缩你下载后文件,生成一个Squid的文件夹,将此文件夹拷贝到C:\,至此Squid for Windows算是被“安装”到你的Windows计算机了。
(备注:Squid for windows的默认安装是在C:\squid下,当然,可以把Squid放到其他的路径,但是需要大量的配置squid配置文件中的路径信息,那样会比较麻烦)


打开squid文件夹,etc文件下的三个文件名改为如下:
squid.conf.default ----->squid.conf

mime.conf.default ---->mime.conf  

cachemgr.conf.default---->cachemgr.conf

配置squid.conf文件,我们可以使用任意文本编辑器对squid.conf(配置文件)进行编辑,修改squid的配置语句,文件中的#后的文本表示注释。


由于Squid是基于Cache(缓存,要在c:\squid\var\下新建cache目录用于存放缓存)的代理服务器,所以设置缓存的大小对优化服务器的性能是有必要的,下面来看一下如何设置cache的大小。


以下是一些squid的基本配置参数解释

  http_port 3128 //设置监听的IP与端口号
  cache_mem 64 MB //设置内存缓冲的大小
  cache_dir ufs /var/spool/squid 2000 16 256 //设置硬盘缓冲大小
  cache_effective_user squid //设置缓存的有效用户
  cache_effective_group squid //设置缓存的有效用户组
  dns_nameservers 192.168.0.254 //设置DNS服务器地址,一般可以不设置,默认使用服务器自己设置的dns
  cache_access_log /var/log/squid/access.log //设置访问日志文件
  cache_log /var/log/squid/cache.log //设置缓存日志文件
  visible_hostname 192.168.0.20 //设置squid主机名称


最后我们还要有一个步骤,否则在启动squid服务的时候会报错,那就是配置TAG: visible_hostname段,找到此段,再后面添加visible_hostname 机器名(随便起) 这么一行,就搞定了。

示例:visible_hostname supersrv #将hostname设置为supersrv

至此,可以保存squid.conf并且退出文本编辑器了,简单的Squid for Windows的配置已经完成。

下面我们回到命令行,输入以下命令:
c:\>cd c:\squid\sbin
C:\squid\sbin>squid -i (注册Squid为Windows的服务,默认的服务名为SquidNT,可以使用“管理工具”中的“服务”来启动/停用服务)
C:\squid\sbin>squid -z (生成高速缓存的目录)
C:\squid\sbin>squid    (启动squid服务,另一种比较好的方法是在“管理工具”,“服务”中选择SquidNT,然后选择启动服务)



附录

(只是单一实现web加速的方法配置文件,更详细配置介绍参照squid权威指南:http://blog.s135.com/book/squid/index.html):

#proxy name

visible_hostname HighSpeedProxy


#chache_memory

cache_mem 300 MB

cache_swap_low 90

cache_swap_high 95


#cache_dir

cache_dir ufs c:/squid/var/cache 10000 16 256     #如果squid没有装在C盘中要另外设置


#cache_logs

cache_access_log c:/squid/var/logs/access.log

cache_log c:/squid/var/logs/cache.log

cache_store_log c:/squid/var/logs/store.log


#cache_manager

cache_mgr ***@mail.com    #邮箱地址


#cache runner

cache_effective_user squid


#squid proxy port 8080

http_port 80


#use reverse proxy not normal 

httpd_accel_with_proxy off


#squid background webserver port 80

httpd_accel_port 80

forwarded_for on


#webserver domainname

httpd_accel_host *.*.*.*    #  *指要跳转的web服务器ip地址


#squid ACL rules

acl all src 0.0.0.0/0.0.0.0

acl localhost src 127.0.0.1/32 *.*.*.*/32   #  *指squid服务器的ip地址

acl clearcache method PURGE

http_access allow all

阅读(1469) | 评论(2) | 转发(1) |
给主人留下些什么吧!~~

liangston2011-05-31 16:05:33

yifangyou: 少见跑在win下的squid,win下如何保证高性能呢,据说squid是用epoll技术性能才高,win下没有epoll,而且win下还有连接数限制.....
对,我只是在windows下一个尝试。

yifangyou2011-05-30 22:01:43

少见跑在win下的squid,win下如何保证高性能呢,据说squid是用epoll技术性能才高,win下没有epoll,而且win下还有连接数限制