方法一
服务器南两个IP地址(111.22.33.44和111.22.33.55),分别他用名称server domain.tld和www.otherdomain.tld。主机名www.domain.tld是server.domain.tld的一个可用名,他们代表了主服务器,
服务器配置:
Pore 80
DocumentRoot /www/domain
ServcrName www.domain.tld
<VinualHosl 111.22.33.55>
DocumentRoot /www/otherdomain
ScrverName www.otherdomain.tld
......
</VirtualHost>
在上面的配置文什中,除了定义上服务器为www.domam.tld外,我们使用了一个<VirtualHosl>段定义了虚拟土机www.otherdomain.tld,这两个域名对心的lP是不相同的,他们对应的DocumentRoot也不一样。由地址111.22.33.55 可以到达www.othermain.tld,而由111.22.33.44可以到达主服务器www.domain.tld。
方法二:
它的基本设置和方法与方法一相同,但在这种方法中我们不需要设置专门的主服务器,而是采用了两个<VirtualHost>段定义了两个虚拟主机,其中111.22.33.44对应的域名为www domam。tld,向111.22.33.55对应的域名为www.otherdomain.tld,具体的服务器配置如下所示。
服务器配置:
Port 80
ServerName server.domain tld
<VirtuaIHost 111.22.33 44>
DocumentRoot /www/domain
ServerName www.domain.tld
</VirtualHost>
<VirtualHost 111.22.33.55>
DocumentRoot /www/otherdomain
ServerName www.otherdomain.tld
</VinualHost>
在这种情况下,主服务器将不会得到请求,这是因为我们将机器的所谓lP地址都用在配置基于lP的虚拟主机上了。
方法三:
服务器有两个IP地址(111.22.33.44和111.22 33.55).分别解析到域名server.domain.tld和www.otherdomain.tld。域名www.domain.tld是土服务器scrver.domain.tld的一个同名服务器,当网络服务器使用缺省的端口80时.www-cache.domain tld将成为代理缓存服务器对端口8080进行监听。
服务器配置:
Port 80
Lislen 111.22 33,44:80
Listen 111.22.33.55:8080
ServerName server.domain.tld
<VirlualHost 111.22 33.44:80>
DocumentRoot /www/domain
ServerName www.domain.tld
</VirtualHost>
<VirtualHost 111.22.33 55:8080>
ServerName www-cache.domain.tld
<Directory proxy:>
order deny,allow
deny from all
allow from 111.22.33
</Directory>
</VirtualHost>
在上面的设置中,主服务器server.domain.tld将无法收到请求,机器的所有ip地址(初本地主机外)都用于设置基于ip的虚拟主机。我们只能通过端口80从个地址达到网络服务器www.domain.tld,而通过端口8080从第二个地址到达代理服务器www-cache.domain.tld。
推荐阅读:如何设置不支持基于域名虚拟主机的用户环境