我的 Mac/etc/hosts
文件中已有一个自定义域名条目,用于本地测试。我可以使用 来从浏览器进行连接http://dev.mysite.co:5000
。
127.0.0.1 dev.mysite.co
127.0.0.1 localhost
我正在使用 Microsoft 提供的 VirtualBox 映像之一在 Edge 中测试我的网站。由于我必须使用 连接到我的本地主机,因此我遇到了 CORS 问题http://10.0.2.2:5000
,因此我想重用我的 中的域设置/etc/hosts
。
我的本地主机上的节点服务器正在监听0.0.0.0:5000
。
我运行了这个命令,它应该是让客户操作系统使用主机的 DNS,但我无法http://dev.mysite.co:5000
在我的虚拟机内加载。
VBoxManage modifyvm "MSEdge - Win10_preview" --natdnshostresolver1 on
此命令仍然有效吗?我还需要做其他什么才能使其正常工作吗?
答案1
/etc/hosts
文件不是 DNS 解析器的一部分。您可以直接将您的复制/etc/hosts
到C:\Windows\System32\drivers\etc\hosts
,但这样做不行,因为从 VM 的角度来看127.0.0.1
是 VM 的 IP(环回)。
为了使其工作,你应该添加C:\Windows\System32\drivers\etc\hosts
以下行:
10.0.2.2 dev.mysite.co
它将把dev.mysite.co
虚拟机内的任何请求解析到你的主机的 IP(这是我的假设10.0.2.2
- 请检查主机操作系统上虚拟机适配器的 IP,例如通过ifconfig vboxnet0
)