服务器名
|
IP
|
端口
|
域名
|
Squid
|
192.168.0.100
|
80
|
\
|
DNS
|
192.168.0.100
|
53
|
\
|
Web1
|
192.168.0.10
|
81
|
www1
.kt.com
/
www2
.kt.com
|
Web2
|
192.168.0.20
|
82
|
www3
.kt.com
/
www4
.kt.com
|
--enable-arp-acl
|
使用非标准的函数接口来执行ARP访问控制列表,默认被禁止,在linux或solaris可能用的上这功能
|
--enable-linux-netfilter
|
使用HTTP拦截功能,那么就激活该选项
|
--enable-auth
=
|
支持哪种验证机制:basic、digest、ntlm,假如不带参数选项编译进程将增加对所有验证机制的支持
|
--disable-internal-dns
|
源码含两个不同的DNS解决方案内部的和外部的,内部查询是默认的,该选项是禁止内部功能
|
cache_peer 192.168.0.
10
parent
8
1
0
no-query
originserver
weight=
1
name=
a
|
指定后端
web
服务器
IP
和端口
80
,weight设置权重
|
cache_peer 192.168.0.
2
0
parent
8
2
0
no-query originserver
weight=
1
name=
b
|
指定记录名为
b
,下面会定义
|
cache_peer_domain
a
www1
.kt.com
www2
.kt.com
|
根据上面的设置定义
a
所指向的域名
|
cache_peer_domain
b
www3
.kt.com
www4
.kt.com
|
意思就是访问
www3
.kt.com指向192.168.0.
2
0
|
acl
all src
0.0.0.0/0.0.0.0
|
定义all访问控制列表,内容为所有客户端
|
http_access
allow
all
|
对定义的
all
设置,允许所有客户访问,
注意:位置很重要
|
http_port
80
vhost
|
设置
squid
监听端口,
vhost
是支持虚拟主机
|
cache_mem
512
MB
|
设置高速缓存为512MB,一般为实际内存的1/3
|
maximum_object_size_in_memory
512
KB
|
如果超过这个设置的值就不再内存中缓存而存入IO中
|
cache_dir ufs /usr/local/squid/var/cache
10240 16 256
|
硬盘缓存为10G,一级子目录16个,
注意:依照上面创建的目录设置
|
maximum_object_size
1024 KB
|
单个文件最大缓存大小,超过这个大小将不缓存
|
cache_swap_low
80
|
最低缓存
百分比,就是cache_mem所设置值的百分比
|
cache_swap_high
100
|
最高缓存比,缓冲容量达到所设百分比值时开始删除缓冲数据
|
access_log /usr/local/squid/var/logs/
access.log
|
设置访问日志,
注意:依照上面创建的目录设置
|
cache_log /usr/local/squid/var/logs/
cache.log
|
设置缓存日志,去掉注释
|
cache_store_log
/usr/local/squid/var/logs/
store.log
|
设置网页缓存日志
|
emulate_httpd_log
on
|
使Squid按照Web服务器的格式创建访问记录,Web访问记录分析程序需要
|
cache_effective_user
squid
|
设置squid进程所有者,
去掉注释
|
cache_effective_group
squid
|
设置squid进程所属组,
去掉注释
|
half_closed_clients
off
|
一旦从客户端返回
no more data to read的信息,squid就立即关闭该连接
|
icp_port
3130
|
这是
squint
直接通信的端口,
默认这个端口就是开着的
|
[root@zzh /]# /usr/local/squid/sbin/squid -k
parse
|
检查一下配置文件
|
[root@zzh /]# /usr/local/squid/sbin/squid -z
X
|
初始化服务
|
[root@zzh /]# /usr/local/squid/sbin/squid
-sD
|
启动squid服务
|
[root@zzh /]# /usr/local/squid/sbin/squid -k
shutdown
|
关闭服务器,也可以用
interrupt强制杀死服务
|