如何配置基于IP地址的虚拟主机<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />

 

2009-03-18 第二天

 

如何配置基于 IP 地址的虚拟主机

 

简单介绍:这是一个apache的系列配置文档,如何配置基于IP地址的虚拟主机,此篇为第三篇。

 

虚拟主机简介:
1.  把一台运行在互联网上的服务器分成多个虚拟的服务器。
2.  每一个虚拟主机都具有独立的域名和完整的Internet服务器(支持WWWFTPE-mail等)。
3.  一台服务器上的不同虚拟主机是各自独立的,并由用户自行管理。
4.  在外界看来,每一台虚拟主机和一台独立的主机完全相同。

 

 

配置参数:
<VirtualHost *:*>

 ServerAdmin                 管理员的E-mail地址
 DocumentRoot              虚拟主机的根目录

 ServerName                虚拟主机的名称端口

 ErrorLog                   虚拟主机的错误日志路径

 Customlog                 虚拟主机的访问日志路径
</VirtualHost>

 

基于IP的虚拟主机

1. 在服务器上绑定多个Ip

2. 把多个网站绑定到不同的IP

3. 访问服务器上不同的IP,可以看到不同的网站。

 

 

需求一:基于IP的虚拟主机:

1. 相同的IP不同的端口号的虚拟主机配置

Include指令
2 httpd.conf中添加Include
#echo “Include vhost/vhost.conf”>>/etc/httpd/conf/httpd.conf
3.   创建虚拟主机目录
#mkdir /etc/httpd/vhost

相同的IP不同的端口号的虚拟主机配置:

子文件的配置:

Listen 88
<VirtualHost 192.168.0.6:88>
DocumentRoot /var/www/vhost88
ServerName 192.168.0.6:88
CustomLog /var/www/vhost88/access_log combined
</VirtualHost>

 

创建根目录

#mkdir /var/www/vhost88
创建主页
#echo “vhost88” >/var/www/vhost88/index.html
Apache重新启动
Service httpd restart

 

具体配置:(实现一个IP 2个端口的虚拟主机
#echo “Include vhost/vhost.conf”>>/etc/httpd/conf/httpd.conf
#mkdir /etc/httpd/vhost
#vi /etc/httpd/vhost/vhost.conf    (创建虚拟配置目录,即添加子文件的配置)

 

添加:
Listen 88
Listen 89
<VirtualHost 192.168.0.6:88>
DocumentRoot /var/www/vhost88
ServerName 192.168.0.6:88
CustomLog /var/www/vhost88/access_log combined
</VirtualHost>

 

 

<VirtualHost 192.168.0.6:89>
DocumentRoot /var/www/vhost89
ServerName 192.168.0.6:89
CustomLog /var/www/vhost89/access_log combined
</VirtualHost>
#######################################################添加至此

#mkdir /var/www/vhost88
#mkdir /var/www/vhost89
#echo “vhost88” >/var/www/vhost88/index.html
#echo “vhost89” >/var/www/vhost89/index.html
Service httpd restart

 

 

 

需求二: 基于Ip的虚拟主机:

不同的Ip地址相同的端口号

(1)    多块物理网卡,每个网卡一个IP

(2)    一块物理网卡,绑定多个IP

配置虚拟网卡:

#ifconfig eth0:0 192.168.0.6 up
#ifconfig eth0:1 192.168.0.7 up

 

 

具体配置如下:(实现一个IP ,多个地址访问)

 

#echo “Include vhost/vhost.conf”>>/etc/httpd/conf/httpd.conf
#mkdir /etc/httpd/vhost
#vi /etc/httpd/vhost/vhost.conf

 

<VirtualHost 192.168.0.6:80>
DocumentRoot /var/www/vhost6
ServerName 192.168.0.6
CustomLog /var/www/vhost6/access_log combined
</VirtualHost>

 

<VirtualHost 192.168.0.7:80>
DocumentRoot /var/www/vhost7
ServerName 192.168.0.7
CustomLog /var/www/vhost7/access_log combined
</VirtualHost>
############################################## 添加至此

#ifconfig eth0:0 192.168.0.6 up
#ifconfig eth0:1 192.168.0.7 up
#mkdir /var/www/vhost6
#mkdir /var/www/vhost7
#echo “vhost6” >/var/www/vhost6/index.html
#echo “vhost7” >/var/www/vhost7/index.html
Service httpd restart

 

 

########################################################### 

 

基于Ip的虚拟主机到此结束!