Apache配置基于IP的虚拟主机

对于一个运营商来说,一个Apache 往往承载了几十个到上百个网站,以保证良好的经济收益。

采用虚拟主机是个很好的方法,虚拟主机分为:基于IP地址的和基于域名的。

而基于域名的虚拟主机被广泛采用的。本次通过实验来说明如何在Aapche中配置2个基于IP的虚拟主机。

实验环境:

VM虚拟机环境,两台主机使用Host-only , DHCP联网方式.

条件:

服务器: CentOS 6.3 32bit IP: 192.168.241.130 版本:Apache-2.4.3

客户端: Windows XP 32bit IP: 192.168.241.128

服务器和客户端需要互通

要求:

服务器搭建3个网站:www.linux.com www.centos.com

这两个网站的目录位于 /var/web/ 下

网站使用ip: 192.168.241.130 通过80端口监听

客户端能成功访问这两个网站

步骤:

1. 创建web目录 :

mkdir /var/web/linux

mkdir /var/web/centos

2. 分别进入linux 和 centos中创建 index.html

3. 编辑这两个index.html 文件, 分别写入llllllllllllllllllll, ccccccccccccc

以区分两个不同的网站,保存退出。

4. cd /usr/local/apache/conf vim httpd.conf 找到# ServiceName www.example.com:80

和 # include conf/extra/httpd-vhosts.conf 把它们前面的 “#”去掉。

6. cd /usr/local/apache/conf/extra

vim httpd-vhosts.conf

添加如下内容:

<VirtualHost *:80>

ServerAdmin youremail.com

DocumntRoot “/var/web/linux”

ServerName www.linux.com

</VirtualHost>

<Directory “/var/web/linux”>

Options Indexes FollowSymLinks

AllowOverride None

Order allow,deny

</Directory>

<VirtualHost *:80>

ServerAdmin youremail.com

DocumentRoot “/var/web/centos”

ServerName www.centos.com

</VirtualHost>

<Directory “/var/web/centos”>

Options Indexes FollowSymLinks

AllowOverride None

Order allow,deny

</Directory>

7. 配置完成后,保存退出。

8. 执行service httpd start

9. 关于DNS,就不再设置named名字服务器了。直接在XP的hosts文件中设置。

10. 打开hosts文件,将3个网站的域名和其ip写入其中,如下图所示。保存退出。

11. 分别打开3个网站,如下图所示:

可见, 基于域名的虚拟主机设置成功。

Leave a Reply