【发布时间】:2011-10-19 18:20:07
【问题描述】:
localhost和真实ip地址有什么区别?
如果我使用http://localhost:8080/index.html和http://192.123.456.001:8080/index.html访问应用程序(例如192.123.456.001是主机的真实IP地址),有什么区别?
【问题讨论】:
-
192.123.456.001 不是真实的 IP 地址 :-)
标签: tcp
localhost和真实ip地址有什么区别?
如果我使用http://localhost:8080/index.html和http://192.123.456.001:8080/index.html访问应用程序(例如192.123.456.001是主机的真实IP地址),有什么区别?
【问题讨论】:
标签: tcp
当您访问localhost 时,您的/etc/hosts 文件将告诉您的计算机不要再查看并将您重定向到您自己的计算机。当您访问本地 IP 地址时,您的计算机会要求路由器获取数据,然后您的路由器将指向您的计算机。
【讨论】:
除了其他答案之外,您在使用 localhost 时可能会遇到神秘问题。
一个例子:如果你在 URL 栏中输入http://localhost,Windows 上的 IE 会创建一个快捷方式。当您正在开发 Web 应用程序并安装了本地代理(例如 Fiddler)以查看在客户端网页和本地运行的服务器之间传递的消息时,这将成为一个问题 - 消息不会被捕获,因为它不会通过在这种情况下的代理。这使得在您的应用程序中查找仅限 IE 的错误有点不方便...... ;-)
【讨论】:
来自维基百科,相关点:
以相同的方式与环回接口通信 与网络上的另一台计算机,但绕过本地网络 接口硬件,对于测试软件很有用。
连接到本地托管的网络服务,例如电脑游戏 服务器或其他进程间通信,可以执行 以高效的方式通过环回地址。
【讨论】:
不同之处在于,当你设置一个监听套接字(等待连接)时,你必须告诉它要绑定到哪个地址。这同样适用于所有常见 Web 服务器的网站配置。
通常您只会绑定到任何地址,这意味着您可以通过 127.0.0.1 或 192.x.x.x 或机器碰巧拥有的任何其他 IP 地址访问它,但有时您可能希望绑定到特定地址 - 例如如果您在一台机器上有 4 个公共 IP,您可能希望在特定 IP 上拥有一个特定站点。
【讨论】: