上次我以个人笔记的内容写了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必须有,否则将无法转发至后端服务器
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