我可以使用IP地址访问网站吗

问题描述 投票:0回答:2

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

dns
2个回答
12
投票

TL;DR: 这取决于服务器的配置方式,但可能不是,我不会依赖它。

这是因为您尝试访问的网站可能位于反向代理或负载均衡器后面。负载均衡器的作用类似于铁路交换机,具体取决于您用于连接到它的主机名。

为了简单起见,假设

google.com
mail.google.com
在同一台服务器上,具有相同的 IP:
192.168.1.1

如果您尝试直接连接到

http://192.168.1.1/
,网络服务器如何知道您想要哪种服务? 不会。 事实上,有些公司的业务完全基于负载平衡其他公司的服务器。

当您使用浏览器连接到主机时,例如:

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

Digital Ocean 有一个很棒的教程,介绍如何为 nginx 配置基本虚拟主机。 这演示了多主机配置的基础知识。

如果您不想打扰 DNS 服务器,您只需修改

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'

2
投票

是的,您可以使用IP地址访问任何域。域名只是网站的名称,IP 地址是页面/网站的地址。 您始终可以使用命令提示符 ping 网站:

ping www.google.com

您将获得一个 IP 地址,在本例中为

 216.58.197.78

注意:IP 可能会随时间而变化。因此,请确保运行 ping 命令来查找最新的 IP。

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

© www.soinside.com 2019 - 2024. All rights reserved.