虚拟机中的名字“localhost”可以映射到主机的IP吗?

我有一个微软的“现代IE”网站的Windows XP / IE6虚拟机镜像(使用虚拟PC)。 此虚拟机由Windows 7机器托pipe。

我在主机上有一个本地Web应用程序,需要在IE6中检查(可悲)。 在虚拟机内部,“本地主机”名称可以映射到指向主机的IP地址吗? 我尝试编辑虚拟机中的c:/ windows / system32 / drivers / etc / hosts文件到[主机的IP地址] localhost,但这不起作用。 我想使用“localhost”而不是IP的原因是因为某些Web应用程序的configuration文件指向“localhost”。

我可以将configuration文件更改为指向不同的域名,但我想知道“localhost”名称本身是否可以指向其他名称。 我感觉到“localhost”是一些只能指向127.0.0.1的保留关键字。

不,你不能这样做。

RFC 2606定义了“保留的顶级域名(TLD)”,明确禁止它几乎所有的TCP / IP栈都将静态绑定“本地主机”到本地环回地址(127.0.0.1)

如果您使用IIS作为Web服务器,则可以使用应用程序请求路由来创build“代理”规则,然后从另一个主机接收该文档。

如果要使用名称localhost访问主机上的Web应用程序,则可以使用某种反向代理。 该代理将安装在客机上。

客户端上运行的Web浏览器也将连接到客户端上运行的反向代理,以便使用指向127.0.0.1的标准localhost名称。 然后,反向代理将连接到主机上运行的真实Web服务器。

  1. 提到的应用程序请求路由是在IIS上运行的一个示例,但似乎只支持IIS 7和更高版本。 在主机上运行Web服务器时,在客户机上运行的服务器无关紧要。
  2. Apache可以configuration为反向代理。 。
  3. 鱿鱼也可以作为一个逆向代理 。
  4. 还有例如Proxyma