方法一:
在这个例子中,服务器有一个IP地址111.22.33.44,它解析到域名server.domain.tld。这个地址还可以使用域名www.domain.tld和www.sub.domain.tld,具体服务器配置如下所述。
服务器配置:
Port 80
ServerName server.domain.tld
NameVirrualHost 111.22.33.44
<VirtualHost 111.22.33.44>
DocumentRoot/www/domain
ServerName www.domain.tld
<VinualHost>
<VirtualHost 111.22.33.44>
DocumemRoot/www/subdomain
ServerName www sub.domain tld
</VirtuaIHost>
和基于域名的虚拟主机配置不同,在上面的设置中我们使用了命令NameVirtualHost,它用来指定要被配置为虚拟主机的IP地址。除了本地主机外,其它主机并没有指定端口,而主服务器仅服务于本地的请求,因此个出现的虚拟主机www.domain.tld可以被看作是缺省的主服务器。
方法二:
服务器有两个IP地址(111.22.33.44和111.22.33.55),分别解析到域名serverl.domam.Lld和server2.domain.tld。www.domain.tld也可以用作主服务器的域名,它要能处理所有没有叫确指令地址的请求。在下面的设置中,我们建立了两个虚拟主机,其中一个是www.othenmun.tld,另一个为www.sub.domain.tld,它要能处理所有*.sub.dumain.tld为域名所发出的请求。虚拟主机使用地址111. 22. 33. 55,具体配置如下。
服务器配置:
Port 80
ServerName www.domain.tld
DocumentRoot/www/domain
NameVirtualHost 111.22.33.55
<VirtualHosl 111.22.33.55>
DocumentRoot /www/otherdomain
ServerName www.otherdomain.tld
<VirtualHost l11.22.33.55>
DocumentRoot www/subdomain
ServerName www.sub.domain.tld
ServerAlias *.sub.domain.tld
</VirtualHost>
除了地址111.22.33.55外,其它任何地址上的请求都应该由主服务器响应。发送到地111.22.33.55上的请求,如果该请求没有host:Hcader或无法确定,那么这个请求应该由www.otherdomain响应。
推荐阅读:基于IP的虚拟主机配置的三种方法