我能使用IP地址访问网站吗?

4

我最近了解了DNS(域名系统或域名服务器)以及它的工作原理。我想知道-我能否使用网站的IP地址访问它,如何操作? - 谢谢


你可以在谷歌上搜索相同的内容! - Tavish Aggarwal
我没有从那里得到,所以我把它放在这里。 - Abhijeet Saha
2个回答

10

简而言之:这取决于服务器的配置,但很可能不行,我不会依赖它。

这是因为您要访问的网站很可能在反向代理或负载均衡器后面。负载均衡器就像一个铁路交换机,根据您连接到它的主机名进行操作。

为了简单起见,假设google.commail.google.com在同一台具有相同IP地址的服务器上:192.168.1.1

如果您尝试直接连接到http://192.168.1.1/,Web服务器如何知道您想要哪个服务?它不知道。事实上,有些公司的业务完全基于负载平衡其他公司的服务器。

当您使用浏览器连接到主机时,例如:https://www.google.com,您的浏览器在幕后发送一个特殊的HOST=www.google.com标头。负载均衡器处理此标头并将请求路由到正确的服务器(可能在完全不同的服务器、网络等上)。

Digital Ocean有一个很好的教程,介绍了如何配置Ubuntu上Nginx的基本虚拟主机。这演示了多主机配置可能看起来像什么。

如果您不想搞DNS服务器,可以通过修改您的hosts文件在桌面上设置一个本地实验室环境。您可以搜索一下您操作系统的hosts文件所在位置。

如果您有cURL访问权限,可以这样测试结果:

# if you've configured a virtual host for mysite01.local on port 80 
curl --verbose --header 'Host: mysite01.local' 'http://127.0.0.1'

# if you've configured a virtual host for mysite02.local on port 80 
curl --verbose --header 'Host: mysite02.local' 'http://127.0.0.1'

# depending on your configuration this may return a 404 or point to one of your previous sites 
curl --verbose 'http://127.0.0.1'

3

是的,您可以使用IP地址访问任何域。域只是网站的名称,IP地址是页面/网站的地址。

您始终可以使用命令提示符ping网站:

ping www.google.com

您会获得一个IP地址,这个例子中是216.58.197.78。现在,当您在浏览器中输入该IP地址时,您将被重定向到google.com。您可以将 DNS(域名系统)视为提供IP地址(216.58.197.78)和域名(www.google.com)之间映射的表格。


3
Not able to do so - Abhijeet Saha
无法完成,您在URL中输入了216.58.197.78。 - Wakeel Furqan Ahmed
被踩了。 在浏览器中输入216.58.197.78没有任何反应。 - dor00012

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接