实验环境:CentOS 5.2两台,Apache2.2.3(rpm装的)

Proxy :192.168.10.199

Web :192.168.10.195

实验目标:在web上做虚拟目录web和mail,在proxy上做虚拟主机www.qiangao.com,mail.qiangao.com,当访问proxy的www.qiangao.com实际上访问的是192.168.10.195/web/,当访问mail.qiangao.com的时候实际上访问的是192.168.10.195:/mail/

实验步骤:

在真实的web(192.168.10.195)

1. 服务器上创建虚拟目录

cd /

mkdir qubaoquan

cd web

vi index.html(输入测试)

########################### web site ########################

cd ..

mkdir mail

cd mail

vi index.html(输入测试)

########################### mail site ########################

2. 编辑主配置文件设置虚拟目录

vi /etc/httpd/conf/httpd.conf(添加如下内容)

Alias /web/ "/web/"

<Directory "/web/">

AllowOverride None

Options Indexes

Order allow,deny

Allow from all

</Directory>

Alias /mail/ "/mail/"

<Directory "/mail/">

AllowOverride None

Options Indexes

Order allow,deny

Allow from all

</Directory>

3. 重新启动服务并且访问测试

service httpd restart

192.168.10.195/mail/

192.168.10.195/web/

在代理服务器proxy(192.168.10.195)

1. 编辑主配置文件创建虚拟主机和设置代理

vi + /etc/httpd/conf/httpd.conf(加入以下内容)

NameVirtualHost 192.168.10.199:80

<VirtualHost 192.168.10.199:80>

ServerName www.qiangao.com

ProxyRequests Off

<Proxy *>

Order deny,allow

Allow from all

</Proxy>

ProxyPass / http://192.168.10.195/web/

ProxyPassReverse / http://192.168.10.195/web/

</VirtualHost>

<VirtualHost 192.168.10.199:80>

ServerName mail.qiangao.com

ProxyRequests Off

<Proxy *>

Order deny,allow

Allow from all

</Proxy>

ProxyPass / http://192.168.10.195/mail/

ProxyPassReverse / http://192.168.10.195/mail/

</VirtualHost>

2. 重新启动服务并且测试

service httpd restart

http://www.qiangao.com/

http://mail.qiangao.com/

附:本测试没有DNS所以需要在访问的客户端的host文件中指定

192.168.10.199 mail.qiangao.com

192.168.10.199 www.qiangao.com

2. 本环境的Apache是rpm安装的所以模块不用手动更改,如是编译安装请查看其他笔记