Jam*_*lly -4 networking url ip web
http://example.com的 IP 地址为 93.184.216.34。
从我读到的关于 IP 地址和端口的内容来看,这让我相信将端口 80 附加到它的末尾 (93.184.216.34:80) 也应该加载相同的页面。然而,它给了我一个 404 Not Found 错误。
为什么我无法通过其 IP 地址访问http://example.com?
在HTTP协议允许客户端应用程序(通常是一个网络浏览器),以创建HTTP含有它要接触该网站的名称的请求; 这允许多个网站在相同的 IP 地址和端口上共存。
所有 Web 服务器都可以配置为根据客户端请求的网站名称提供不同的内容;此外,它们可以有一个默认网站,如果请求未明确指定任何主机名,则使用该网站。
在您的情况下,您(您的浏览器)在没有指定主机名的情况下联系 Web 服务器,因为您在 URL 中使用了服务器 IP 地址;似乎网络服务器没有配置为处理这种类型的请求,因此它返回一个错误。
大多数 Web 浏览器会自动使用您在 URL 中指定的任何内容作为请求的主机名(如果您使用 IP 地址,则不使用任何内容);因此您无法控制实际发出的请求。一些开发人员工具允许您执行自定义请求,或者您可以通过连接到目标服务器上的 TCP 端口 80(甚至使用像 一样简单的东西telnet)并使用一些HTTP来手动执行它们。例如,这个(精简的)请求从网站 example.com 返回正确的页面:
GET / HTTP/1.1
Host: example.com
Run Code Online (Sandbox Code Playgroud)
它基本上意味着“给我/名为example.com”的站点的路径(网站根目录)中的内容。