Rumah >pembangunan bahagian belakang >tutorial php >HOSTS绑定域名和IP,但是访问IP和域名,出来的内容不一样
HOSTS 文件是这样绑定的
119.57.113.31 cloudtest.cnfol.com
访问IP出现的是这样的内容
输出域名又是这样的结果
我是这样理解的,输入域名,操作系统首先会去找HOSTS文件,然后映射为IP地址。
所以访问IP和域名应该是一模一样的结果。
GOOGLE一下,没有找到想要的答案!!
一台主机上可能有多个网站,所以访问IP可能访问不了,访问域名才访问得了。这个我明白。
关键这是绑定在HOSTS上啊。想不通啊。
求解释!!!
如果你一个ip绑定多个域名的话,那访问ip又该去哪个域名呢,所以你访问ip不一定能访问你的绑定的域名
你访问ip,就相当于在本机访问localhost,默认指向你的apache里的DocumentRoot这里的指向,而不是你的域名
我是这样理解的,输入域名,操作系统首先会去找HOSTS文件,然后映射为IP地址。
你这个理解没错
所以访问IP和域名应该是一模一样的结果。
几乎是等效的,但是也有例外,那就是在配置apache的时候二者是截然不同的,你看下边的配置
ServerAdmin ???@gmail.com
DocumentRoot "D:/wamp/www/_get.tw"
ServerName 7.7di.net
ServerAdmin ???@gmail.com
DocumentRoot "D:/wamp/www/_web.tw"
ServerName 7di.net
这是同一台服务器上的两个不同的网站,尽管两个网址指向了同一个ip,但是他们却用来开启不同的网站
问题的关键在于你是如何配置 cloudtest.cnfol.com 主机的
问题的关键在于你是如何配置 cloudtest.cnfol.com 主机的
可以这样说,通过HOSTS过,我们都是用IP来访问服务器的。所以服务器返回一样的结果。
我自己猜测,是不是这样子,我们在地址栏上的输入,是不是发给服务器,服务器才可以判断,返回哪个给我们
所以对于这种没有配置域名服务器的,必须在 HOSTS 文件中绑定一下
如果用 ip 和 域名 访问会得到不同的页面,那么他们进入的就不是同一个入口文件
当然也不排除你在入口文件中做了甄别,不过那就绝对的你的问题了
如果经同一个ip能访问到多个网站,则必定存在域名绑定虚拟主机的设置
当web主机与虚拟主机共存的情况下,虚拟主机列表中要同时做web主机的域名(localhost)的绑定
hosts 文件只是替代 dns 的工具,凡是出现在其中的域名都不再向 dns 查询 ip 地址
但是 ip 只是用于网络连接,web 服务器的响应是根据域名做出的