上次我以个人笔记的内容写了Linux下Squid的简易配置方案(使用Squid搭建支持IPv6的代理),这次就拿Windows下手,同样的以最小配置搭建Squid缓存服务器。下一版的MiniServer也将内置Squid For Windows,期待吧~
其实Windows下有许多代理或者缓存服务器的搭建平台,只不过因为我Squid用着顺手了,就拿Squid来说。Squid官方并没有编译好的Windows版本,但是国外大神很NB,有现成的~~http://www.acmeconsulting.it/SquidNT.htm 为了保证稳定性,我们可以选用2.7版本的。Squid For Windows和Linux的配置大同小异,只不过是有些定义路径的地方需要注意,否则会无法启动。有点BUG的是,作者编译时默认的路径是 C:squid ,所以,如果不解压到这个路径下,会导致squid不断报错。这里就需要设置一下路径。

环境准备

上述的网站我死活没有找到下载地址……这里给大家提供另外一个(下载传送门),下载Squid For Windows,并解压。
说明:如果解压到C:squid,执行文件路径为C:squidsbinsquid.exe,那就可以跳过本步骤
我们以解压到D:MiniServerOtherSquid为例

1.解压并改名

更改配置文件名称,找到etc目录,将所有文件的.default后缀删除,还原conf后缀。

2.安装服务

命令行执行以下命令,将Squid安装为系统服务

 
D:MiniServerOtherSquidsbinsquid -i -f "D:MiniServerOtherSquidetcsquid.conf" -n "MiniServ_Squid"

按照作者说明,如果自定义了安装目录,则必须用 -f 参数定义配置文件所在路径(搞毛啊~这个太蛋疼了),-n 后面的 MiniServ_Squid 为服务名称,可以自定义,也可以不带 -n 参数

生成缓存文件夹

 
D:MiniServerOtherSquidsbinsquid -z -f "D:MiniServerOtherSquidetcsquid.conf"

配置Squid

相对Linux而言,Squid For Windows并没有多少不同,如果自定义了安装路径,则需要在squid.conf配置文件中增加或改变以下几行。将其中的路径替换即可,其他配置可以参照Linux的配置(使用Squid搭建支持IPv6的代理)。

cache_dir ufs D:/MiniServer/Other/Squid/var/cache 1024 16 256
access_log D:/MiniServer/Other/Squid/var/logs/access.log squid
logfile_daemon D:/MiniServer/Other/Squid/libexec/logfile-daemon.exe
cache_log D:/MiniServer/Other/Squid/var/logs/cache.log
cache_store_log D:/MiniServer/Other/Squid/var/logs/store.log
mime_table D:/MiniServer/Other/Squid/etc/mime.conf
pid_filename D:/MiniServer/Other/Squid/var/logs/squid.pid
netdb_filename D:/MiniServer/Other/Squid/var/logs/netdb.state
diskd_program D:/MiniServer/Other/Squid/libexec/diskd-daemon.exe
unlinkd_program D:/MiniServer/Other/Squid/libexec/unlinkd.exe
icon_directory D:/MiniServer/Other/Squid/share/icons
error_directory D:/MiniServer/Other/Squid/share/errors/Simplify_Chinese

缓存搭建

搭建前端缓存服务器,关键命令是以下三行。当然,还有其他参数,这里我就不多说了,可以参考上述Linux配置
如果只需要做代理服务器,那么只需要对访问控制做调整即可,可以参考上述Linux配置

 
#Squid监听端口,vhost必须有,否则将无法转发至后端服务器
http_port 80 vhost
#定义后端服务器的IP和端口
cache_peer 127.0.0.1 parent 80 0 no-query originserver name=www
cache_peer_domain www 127.0.0.1

参数

当安装好Squid For Windows后,启动和关闭可以通过控制面板进行操作,也可以在命令行下用net命令启动关闭。
卸载的话和安装一样,只需要把 -i 参数变为 -r 即可,如

D:MiniServerOtherSquidsbinsquid -r -f "D:MiniServerOtherSquidetcsquid.conf" -n "MiniServ_Squid"

可以用binsquidclient.exe 来检查,基本的使用方法
squid运行状态信息: squidclient -p [Squid监听端口] mgr:info
squid内存使用情况: squidclient -p [Squid监听端口] mgr:mem
squid已经缓存的列表: squidclient -p [Squid监听端口] mgr:objects. use it carefully,it may crash
squid的磁盘使用情况: squidclient -p [Squid监听端口] mgr:diskd
更多的信息:squidclient -h 或者 squidclient -p [Squid监听端口] mgr