首先,基于IP的,本机的IP除了127.0.0.1之外,所有127开头的都会指向本机,所以可以用的IP地址是很多的(127.0.0.2  127.0.0.3等等)。不过这些地址只能本机访问哦!

 

基于IP的虚拟主机如下:

 

1、Listen部分,必须直接指定端口,不指定ip地址,配置应写为:

 

Listen 80

 

2、不用像基于域名的虚拟主机那样写“NameVirtualHost”。


 

3、虚拟主机配置段:在httpd.conf 最后加上
 

 
<VirtualHost 127.0.0.2:80>  
  1.     DocumentRoot d:/AppServ/www2   
  2.     ServerName 127.0.0.2:80   
  3. </VirtualHost>  
  4.   
  5. <VirtualHost 127.0.0.3:80>  
  6.     DocumentRoot d:/AppServ/www3   
  7.     ServerName 127.0.0.3:80   
  8. </VirtualHost>
     

4、然后相应的配置好各个目录属性,下面是一个目录属性的典型配置:

  1. <Directory "d:/AppServ/www2">  
  2.     Options Indexes FollowSymLinks Multiviews   
  3.     AllowOverride All   
  4.     Order Allow,Deny   
  5.     Allow from all   
  6. </Directory>  
  7.   
  8. <Directory "d:/AppServ/www3">  
  9.     Options Indexes FollowSymLinks Multiviews   
  10.     AllowOverride All   
  11.     Order Allow,Deny   
  12.     Allow from all   
  13. </Directory>  

这样,用127.0.0.2就可以访问d:/AppServ/www2的内容了。

 

基于端口的配置如下:

 

首先你要找到你的apache上的配置文件httpd.conf,用记事本打开,  
  找到Listen   <你的ip>:80  
  或者Listen:80  
  添加或更改为你要添加的端口(不能有冲突)如下面的例子:  
  Listen   80  
  Listen   81  
  Listen   82  
  再建立虚拟主机:   
    
  NameVirtualHost   localhost:80  
  NameVirtualHost   localhost:81  
  NameVirtualHost   localhost:82  

 
  <VirtualHost   localhost:80>  
          DocumentRoot   f:\skywatcher\web\  
          ServerName   localhost:80  
  </VirtualHost>  


  <VirtualHost   localhost:81>  
          ServerAdmin   ustbck001@china.com  
          DocumentRoot   f:\skywatcher\web1\  
          ServerName   locahost:81  
  </VirtualHost>  


  <VirtualHost   localhost:82  
          DocumentRoot   f:\skywatcher\web\phpmyadmin  
          ServerName   localhost:82  
  </VirtualHost>

 

 

这样就通过不同的端口访问了不同的文件,哈哈,重启Apache,大功告成