xcznb 2009-04-11
一、安装反向代理服务器
1.下载反向代理服务器软件采用squid,下载地址:
http://www.squid-cache.org/Versions/v2/2.2/squid-2.2.STABLE5-src.tar.gz
下载后存放在/usr/local/squid/src目录里,文件名是
squid-2.2.STABLE5-src.tar.gz ;
2.解压代理服务器软件包:
进入/usr/local/squid/src目录,键入如下命令:
gzip -dc squid-2.2.STABLE5-src.tar.gz | tar -xvf -
这个命令将代理服务器软件包解开,建立一个目录叫作squid-2.2.STABLE5,并且把所有的文件放在这个目录里面。
3. 编译源程序
首先运行配置脚本,以便生成适合您的机器的编译脚本。命令格式是:
./configure
这种方式产生的编译脚本编译后默认安装路径是/usr/local/squid。
如果想改变安装路径,需要用以下格式:
./configure -prefix=/some/other/directory
这种方法编译后安装到/some/other/directory里面。
生成编译脚本后,可以正式开始编译了。命令为:
make
4、 安装Squid代理服务器
编译通过后,用以下命令安装:
make install
安装完成后,会在您指定的安装路径里产生一个squid目录,squid目录下有三个目录:etc、bin、logs。其中etc里面是配置文件,bin里面是执行文件,logs里面是日志文件。
二、调试反向代理服务器
安装结束后就是调试服务器,使其按照您的要求工作。Squid的配置文件只有一个,在etc目录里,名字是squid.conf,所有的配置选项都在这个文件里面。而且每个配置项目都有注释说明。我们只介绍与反向代理有关的几个项目。
首先,在squid文件里面找到下列配置项:
cache_mem
这里可以添上您准备给squid作为高速缓存使用的内存大小。注意,如果您的机器有N兆内存,那么,推荐您在这里添的数字是N/3。
cache_dir /usr/local/squid/cache 100 16 256
这里的第一个数字100是您准备给squid作为cache使用的硬盘空间大小,单位是兆。如果您想划100M空间当作cache,那么这里就写100。
acl, http_access, icp_access
填写"allowedip"和"allowedip1"ACL访问控制列表。这里应该填写你对外公开的服务器的IP,比如此例的两个WEB服务器对应的外部地址为202.99.157.10 和 202.99.157.18,
acl manager proto cache_object
acl localhost src 127.0.0.1/255.255.255.255
acl all src 0.0.0.0/0.0.0.0
acl allowedip src 202.99.157.10/255.255.255.255
acl allowedip1 src 202.99.157.18/255.255.255.255
http_access deny manager all
http_access allow allowedip
http_access allow allowedip1
http_access deny all
icp_access allow allowedip
icp_access allow allowedip1
icp_access deny all
cache_mgr [email protected]
这里填写cache管理员的Email地址,系统出错会自动提醒cache管理员。
******以上部分均为squid的通用设置以下为关于反向代理部分的设置******
httpd_accel_host britepic.org
httpd_accel_host avnads.cn
此处设置反向代理的主机名
httpd_accel_port 80
此处设置反向代理的WEB服务端口号
#httpd_accel_with_proxy off
此处设置开反向代理的同时,是否开普通代理服务
修改完配置文件,在正式运行squid代理服务器之前,先进行初始化。命令如下:
% /usr/local/squid/bin/squid -z
% /usr/local/squid/bin/squid
检查cache.log文件确保所有部分运行正常。如果有出错信息或系统不能正常启动,一般情况是由于目录和文件的存取权限导致的,请仔细检查各目录和文件的权限设置。 其中特别需要注意的是初始化之前应该将squid目录设置成可写,然后将创建的cache目录和logs目录设置成可写。如果一切正常,那么就可以投入使用了。系统默认的服务端口是3128。
反向代理服务器软件安装完毕后,将该服务器在80端口的http服务设置成不启用。
某些公司会墙特定网站,如果你有一个可访问的域名和服务器,就可以通过nginx反向代理来来解决这些问题。比如现在我们用mirror.example.com镜像www.baidu.com,以下是详细操作。