虚拟主机的有ip地址还要另外购买一个域名对应多个ip吗?

首先一个IP绑定多个一个域名对應多个ip是很常见的事情,租用的虚拟主机大多数都是多个主机共享同一个IP区分具体访问的是哪个主机要从两个方面实现:

1、客户端如何區别不同网站

客户端在请求时,会在HTTP请求的时候包含要请求的具体主机名称比如访问Google的请求通过抓包分析内容是这样的:

整个请求会被發送到服务器上,其中有Host字段标识你要请求的网站一个域名对应多个ip是什么即使访问的是同一个IP地址,由于Host字段不同所以服务器软件囿办法区分具体访问的是哪个网站。

关于Host字段的具体定义可以阅读RFC-2616的第

通常Apache还有一个默认网站,这个网站是可以使用IP地址访问的如果將这个网站设置为无效,那么这个主机就无法通过IP地址直接访问HTTP资源

对于IIS来说,IIS能使用同一个IP绑定多个站点具体可以参考下图:

在默認网站->属性->网站->高级中,添加不同的一个域名对应多个ip即可因为我的IIS版本较低,本身无法支持绑定多个网站高版本的IIS中,可以配置多個网站每个网站绑定不同的一个域名对应多个ip,即可实现访问时的区分

如果服务器没设置默认网站,那么IP地址也无法直接访问主机

所以,如果你直接通过IP地址访问网站会遇到两种情况:

1、服务器设置了默认网站,或者使用IP作为主机名去匹配请求的Host字段那么你通过IP訪问的就是这个网站;

2、服务器没有设置默认网站,或者默认网站被禁止那么你通过IP无法打开任何东,通常遇到的是404错误(找不到页面)在我使用过的几个虚拟主机服务商那,遇到的都是类似的错误

另外,不管是IIS或者Apache或者其它类型的网站服务器软件不仅仅支持多一個域名对应多个ip,也支持多IP也就是一个服务器同时有多个一个域名对应多个ip和多个IP,互相之间是互不干扰的

以上就是一个ip地址可以对應多个一个域名对应多个ip吗的详细内容,更多请关注php中文网其它相关文章!

我要回帖

更多关于 一个域名对应多个ip 的文章

 

随机推荐