linux(CentOS,fedora)下squid3安装及反向代理配置

下载源码包并解压

./configure--prefix=/usr/local/squid--enable-gnuregex--enable-async-io=20--enable-icmp--enable-linux-netfilter--enable-kill-parent-hack--enable-snmp--disable-ident-lookups--enable-cache-digests--enable-arp-acl--enable-err-language="Simplify_Chinese"--enable-default-err-languages="Simplify_Chinese"--enable-poll--enable-linux-netfilter--enable-underscore

make

makeinstall

mkdir/usr/local/squid/cache

chown-Rnobody:nobody/var/squid/cache

chmod777/var/squid/cache-R

/usr/local/squid/sbin/squid-z

配置反向代理

打开etc/squid.conf文件

acl

在文件里找到TAG:acl的位置,在其后加上我们的设置:

aclsitesdstdomain.foo.com

aclsitesdstdomain.bar.com

http_access

在文件里找到TAG:http_access的位置,其后有一行注释:

#INSERTYOUROWNRULE(S)HERETOALLOWACCESSFROMYOURCLIENTS

我们就把自定义的规则放在这行的下面:

http_accessallowsites

http_access的位置是很重要的,在下面有如下设置:

#Andfinallydenyallotheraccesstothisproxy

http_accessdenyall

它会拒绝所有剩下的访问。

http_port

在文件里找到TAG:http_port的位置,在其后加上我们的设置:

http_port80defaultsite=缺省站点vhost

一般来说,vhost就足够了,不过加上defaultsite还是有好处的,毕竟,有的HTTP1.0客户端不发送Host头,在这种情况下系统有一个缺省值总比没有强。

cache_peer

在文件里找到TAG:cache_peer的位置,在其后加上我们的设置:

cache_peerx.x.x.xparent800no-queryoriginservername=foo

cache_peery.y.y.yparent800no-queryoriginservername=bar

80为web服务器访问端口

cache_peer_domain

在文件里找到TAG:cache_peer_domain的位置,在其后加上我们的设置:

cache_peer_domainfoowww.foo.com

cache_peer_domainbarwww.bar.com

cache_peer_access

在文件里找到TAG:cache_peer_access的位置,在其后加上我们的设置:

cache_peer_accessfooallowsites

启动sbin/squid-s

如果不想查找dns,则增加-D选项

相关推荐