【问题标题】:Is there a way to replace 127.0.0.1 on my local machine for test purposes?有没有办法在我的本地机器上替换 127.0.0.1 以进行测试?
【发布时间】:2010-10-21 10:49:27
【问题描述】:

我知道这听起来可能很愚蠢,但无论如何。也许有什么诀窍?

我只想让本地 Web 服务器接收来自我本地计算机的请求,但不知何故看到了不同的 IP 地址?即使是与臭名昭著的 127.0.0.1 不同的单曲也会有很大帮助。

有什么选择吗?

【问题讨论】:

    标签: networking development-environment ip-address test-environments loopback-address


    【解决方案1】:

    试试127.0.0.2 或127.0.0.3 ...或...

    说真的,试试看!

    根据您的操作系统,localhost 可能可以通过整个127.0.0.0/8 网络访问,因此即使127.42.37.254 也可以访问localhost(在我的 Ubuntu 机器上也是如此)。

    【讨论】:

    • 当您尝试时,不要忘记确保您的网络服务器已配置为侦听该 IP。
    • 如何真正“尝试”它?我应该改变什么以及在哪里改变?
    • 要么将 127.0.0.2(或其他)放入 URL 而不是主机名,要么编辑您的 HOSTS 文件,使 localhost 指向您想要的 IP 地址(或者更好地添加一些额外的名称,例如localhost2、localhost3 等)
    • 最简单的“尝试”是 ping 127.0.0.2。这应该得到回应。然后尝试在 127.0.0.2 访问您的网络服务器。如果它正在侦听环回接口,那么这将起作用。如果不是,则明确告诉它侦听该 IP 并重试。
    • @Michael:我绝对不会将 localhost 重新发布到 127.0.0.1 以外的任何 IP - 额外的主机名应该没问题。打破 localhost == 127.0.0.1 假设的交换性迟早会损害大时代。
    【解决方案2】:

    或者在您的 HOSTS 文件中为您想要的任何内容添加一个条目,指向 localhost。

    【讨论】:

    • 但是服务器应用程序不会仍然将 IP 视为 localhost/127.0.0.1 吗?
    【解决方案3】:

    您是否通过 127.0.0.1 访问本地 Web 服务器?如果是这样,如果您使用机器的实际 IP 地址怎么办?请求仍会在您的本地 Web 服务器上结束,但它可能会将其视为发件人,而不是 127.0.0.1。

    【讨论】:

      【解决方案4】:

      您可以使用您的公共IP address。

      【讨论】:

      • 在 NAT 后面时不起作用,除非您的路由器配置正确。
      • 我认为他的意思是“面向外部”的 IP 地址。如果您在 NAT 后面,那么您的 eth0 IP 将是 192.168.1.55 或其他东西 - 与 127.0.0.1 不同,因此是一种与您自己的 Web 服务器通信而无需将 IP 识别为环回 IP 的方式.
      • 链接的站点只给出了互联网可以看到的IP地址,在NAT后面不是eth0的地址。如果答案得到纠正,我会很乐意删除我的 cmets。
      【解决方案5】:

      您始终可以配置网络服务器以侦听您的网络 IP 地址,然后使用该 IP。

      另一方面,如果您希望从多个域(如 a.localhost、b.localhost 和 c.localhost)获取请求,请尝试编辑您的 hosts 文件以将域重定向到 127.0.0.1

      【讨论】:

        猜你喜欢
        • 2019-12-16
        • 1970-01-01
        • 2023-02-18
        • 1970-01-01
        • 1970-01-01
        • 2017-04-04
        • 1970-01-01
        • 2021-01-05
        • 1970-01-01
        相关资源
        最近更新 更多