【问题标题】:internet explorer on windows virtual machine is ignoring my hosts fileWindows 虚拟机上的 Internet Explorer 忽略了我的主机文件
【发布时间】:2010-12-31 22:06:57
【问题描述】:

我在 windows7 上将 xp 作为虚拟机运行,以便我可以检查我在同一台机器上本地构建的 ie 6 和 7 中的网站。

Internet Explorer 将找不到任何托管在 loalhost 上的页面。 “Internet Explorer无法显示该网页。”我可以把一个IP地址放到我局域网上的另一台服务器上,效果很好,但如果它在同一台机器上,它会拒绝。

没有代理。

我已经多次打开和关闭 DNS 客户端服务,但没有任何效果。

有人可以帮忙吗?

编辑:我的虚拟机的主机文件有如下行: 127.0.0.1 mydomain.dev

【问题讨论】:

  • 那么,你的网络服务器是win-7主机?那不是你的winxp虚拟机上的'localhost',在那个winxp机器上,localhost是你的winxp机器。您确定您的网络服务器(在 win-7 上)正在侦听所有 IP 地址而不仅仅是 127.0.0.1 吗?
  • 你能发布你的主机文件的内容以及你的路径吗?
  • 在编辑中添加了主机示例。谢谢,你会看到我的愚蠢错误。

标签: internet-explorer localhost virtual-machine


【解决方案1】:

谢谢你们,nos 和 Andrew,你们都帮助我意识到我没有将虚拟机视为自己的机器。我的主机文件有类似

的行

127.0.0.1 mydomain.dev

这是完全有效的,但它指向虚拟机(没有网络服务器软件)。这是我第一次使用虚拟机,我已经习惯了我的主机文件使用 127.0.0.1 作为我的开发站点。 我需要的是使用 windows7 机器(运行 apache)的 ip 地址:

192.168.1.42 mydomain.dev

如果我不是很确定我的 hosts 文件,我敢肯定你们中的某个人会看到我的错误。谢谢! 我希望这对其他人有帮助!

【讨论】:

    【解决方案2】:

    如果您指的是 Windows 7 机器中的 localhost,则听起来您没有使用 Bridge 网络。这意味着您的虚拟机可以访问外部但看不到您的本地 192.168.* 子网。

    在 Windows 7 的命令提示符下执行此操作

    ipconfig /全部

    这在你的 Windows XP 中

    ipconfig /全部

    你可能会在你的 Windows 7 机器上得到类似的东西

    (网卡) 192.168.1.100

    虚拟盒子 192.168.10.100

    在你的 windows xp 上还有类似的东西

    (网卡) 192.168.10.101

    我怀疑您的虚拟机与您的主计算机 NIC 位于不同的子网中。

    所有希望都不会失去,你可以

    • 将您的 VM 网络绑定更改为桥接模式

    • 或在您的 Windows 7 计算机上使用与 Windows xp 相同主题的 IP 地址,并确保您的 Web 服务器绑定到 0.0.0.0(所有接口)。

    如果您尝试从 windows xp 以 192.168.1.100 访问运行在 windows 7 机器上的 Web 服务器,您只需将其更改为 192.168.10.100。请记住,所有这些 IP 地址都是我编造的,您需要将其更改为您自己的。

    【讨论】:

    • 谢谢,你的回答很好,我认为它会帮助别人,但我的问题更简单。
    【解决方案3】:

    试试链接1,我也遇到了类似的问题,我努力记录下来,找了几分钟也没找到这个解决方案。

    基本上,您可以转到 Internet Explorer 浏览器的 LAN 设置并禁用自动配置。不用担心此设置也会影响其他浏览器。

    【讨论】:

      【解决方案4】:

      必须重新启动 Windows XP 才能将主机文件设置应用于 Internet Explorer。

      【讨论】:

        【解决方案5】:

        我以前也遇到过同样的问题。

        在 IE10 和 IE11 中,保护模式默认始终处于开启状态。在 Internet Explorer 设置的安全选项卡中将 URL 添加到受信任的站点。如果站点仅在 http 协议上运行,请取消选中 SSL 复选框。

        同样对于 Windows 8.1,取消选中 LAN 设置(连接选项卡)中的“自动检测设置”将启用 HOSTS 文件中的自定义条目。

        这应该可以解决问题。

        【讨论】:

        【解决方案6】:

        使用主机 IP 地址将host 添加到主机文件的“快速”方法,以便您可以在虚拟机中访问http://host:<port>/<path>

        1. 在VM中打开管理员控制台(Win, "cmd", CTRL+SHIFT+ENTER)

        2. 运行“CMD /f:off”(允许粘贴制表符)

        3. 将以下内容粘贴到cmd中

          reg query "HKEY_CURRENT_USER\Volatile Environment\1" /v CLIENTNAME | more +2 > %TEMP%\clientname.txt & set /P regclientname=<%TEMP%\clientname.txt & call set CLIENTNAME=%regclientname:~28% & call echo %CLIENTNAME% & call nslookup %CLIENTNAME% | more +4 > %TEMP%\addr.txt & SET /P ADDR=<%TEMP%\addr.txt & call set HOSTIP=%ADDR:~10% & call echo %HOSTIP% & set HF=C:\windows\System32\drivers\etc\hosts && echo.>>%HF% && echo.>>%HF% && call echo  %HOSTIP%   host >>%HF% && type %HF%
          

        注意:额外的“调用”前缀是为了获取之前设置的变量。它必须从注册表中获取 CLIENTNAME,因为它仅在未提升的会话中设置为变量。


        或者!

        1. http://%CLIENTNAME%/

        【讨论】:

          猜你喜欢
          • 2018-02-08
          • 1970-01-01
          • 2021-09-29
          • 2014-11-10
          • 2010-10-21
          • 2013-09-26
          • 2015-01-01
          • 2019-11-14
          • 2018-12-17
          相关资源
          最近更新 更多