为什么直接ping知乎的ip不能访问知乎的网站,而百度就可以,知乎上的一个问题?

发布于 2022-09-06 05:55:02 字数 163 浏览 27 评论 0

打开cmd,输入ping www.baidu.com,然后把得到的ip地址111.13.101.208输入浏览器的地址栏,可以打开百度。但我重复操作ping www.zhihu.com,得到ip地址54.223.189.245,输入地址栏,返回的却是405 not allowed。想请教一下大家,这是为什么呢?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

眼波传意 2022-09-13 05:55:02

在日常的网站发布中很多情况下都无法做到一个IP对应一个站点,在IP4的情况下IP的资源是相对有限的。然而作为最流行的Apache,Nginx等web server自然也考虑到这种情况,

为什么输入网站的ip为什么不能访问网站,输入域名倒可以访问网站?道理也在这里,像这种情况,一个ip对应的几个站点,是通过ServerName来识别同一个IP下的不同站点的,而输入ip地址主机自然是不知道你要访问哪个站点,故无法访问。而现实中,很多的虚拟主机上绑定的是几十甚至几百的网站。

2022-09-13 05:55:02

是否可以,是 HTTP Server 决定的。

HTTP 协议是“应用层”。
而按 IP 访问,请求到达服务器,只需要“传输层”支持即可。

进一步说,应用层在之上,还可以做很多其它的事(至于为什么要做这些“其它的事”,反正有各种原因,一个 IP 用于多个域名啦,觉得域名更方便啦,域名可以做动态 DNS 啦, HTTP 服务器配置搞错了,自己都搞不懂 HTTP 服务器的这些配置啦,等等等等),比如,判断它协议中的那些“额外”信息。而域名,对 HTTP 协议来说,不过是一个普通的头而已。

这是网络分层模型中的内容,比如“七层模型”之类的东西,你可以先去了解一下。然后,再了解一下 HTTP 协议,这个问题才能搞明白。

随风而去 2022-09-13 05:55:02

可能是因为知乎托管在虚拟服务上,服务器IP只有一个,但里面托管的应用有N个,你输入IP,浏览器怎么知道你要找谁

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文