Squid 3的多域名加速基本配置

weblym 2011-06-16

Squid是一种在Linux系统下使用的优秀的代理服务器软件,可以作为缓存加速服务和CDN服务使用。

squid不仅可用在Linux系统上,还可以用在AIX、Digital Unix、FreeBSD、HP-UX、Irix、NetBSD、Nextstep、SCO和Solaris等系统上。

首先不用我说了 肯定是要在服务器安装Linux操作系统了,我们这里推荐使用CentOS.个人比较喜欢这个。

安装好CentOS后,我们利用SSH登陆进超级终端做一下必要的更新。

#yum install -y make gcc-gcc+ autoconf sudo wget libtool-ltdl-devel gd-devel freetype-devel libxml2-devel libjpeg-devel libpng-devel openssl-devel curl-devel patch libmcrypt-devel libmhash-devel ncurses-devel
更新完后我们开始安

http://www.squid-cache.org上下载最新的Squid3x稳定版本装Squid.

 

#groupadd squid

#useradd -s /sbin/nologin -d /dev/null -g squid squid

 

#wget http://www.squid-cache.org/Versions/v3/3.0/squid-3.0.STABLE15.tar.gz

用tar命令把文件解压出来 进入squid目录进行编译安装

#./configure --prefix=/usr/local/squid --enable-follow-x-forwarded-for --enable-storeio=aufs,ufs --with-maxfd=65536 --with-pthreads --enable-dlmalloc --enable-poll --enable-stacktraces --enable-removal-policies=heap,lru --enable-delay-pools

#make(这里可能会编译很久 请耐心等待)

#make install(安装也是一样)

 

安装完成后,我们进入/usr/local/squid/etc目录编写squid.conf文件。可以把自带的删除 然后自己用vi命令重新写一份,这样比较快。

配置文件如下

# squid conf etc/squid.conf
# Last Updated 2010.11.20

###
cache_effective_user squid
cache_effective_group squid
tcp_recv_bufsize 65535 bytes
icp_port 0
visible_hostname cdncache(为squid缓存服务器名称,每台服务器建议取不同的名字,便于区别)
http_port 80 vhost vport

#acl
acl local src 127.0.0.1
acl Manager proto cache_object
acl purge method PURGE
http_access allow Manager local purge
http_access deny Manager purge
acl alls src all
http_access allow alls

###cache,dir
cache_log /usr/local/squid/var/logs/cache.log
access_log /usr/local/squid/var/logs/access.log squid
cache_dir ufs /usr/local/squid/var/cache/ 10000 16 256
maximum_object_size 1024 KB
maximum_object_size_in_memory 1024 KB
cache_mem 512 MB
cache_swap_low 80
cache_swap_high 90
ipcache_size 512
ipcache_low 90
ipcache_high 95
fqdncache_size 512

### timeout
connect_timeout 1 minute
peer_connect_timeout 30 seconds
request_timeout 2 minutes
persistent_request_timeout 30 seconds
dns_children 3
hierarchy_stoplist cgi-bin ?

#refresh_pattern
refresh_pattern ^ftp: 1440 20% 10080
refresh_pattern ^gopher: 1440 0% 1440
refresh_pattern -i (/cgi-bin/|\?) 0 0% 0
refresh_pattern -i \.jpg$ 43200 50% 86400
refresh_pattern -i \.png$ 43200 50% 86400
refresh_pattern -i \.css$ 43200 50% 86400
refresh_pattern -i \.js$ 43200 50% 86400
refresh_pattern -i \.xml$ 43200 50% 86400
refresh_pattern -i \.htm$ 43200 50% 86400
refresh_pattern -i \.html$ 43200 50% 86400
refresh_pattern . 0 20% 4320

#header off
via off
reply_header_access Via deny all
reply_header_access Server deny all

 

编辑好后保存退出。这里我们可以把Squid写成服务让他开机自动启动,具体设置方法可以见上遍文章。
最后一步,加速站点配置好后,还需要关键的一步,就是修改linux服务器本地host让他解析加速域名到需要加速的服务器上面。

linux下面的hosts表位于/etc/hosts,格式跟Windows大致相同,打开后我们把下面一行加到末尾

然后保存退出。  重启下服务器 试试效果吧。

相关推荐

ganyouxianjava / 0评论 2012-05-31