繁体   English   中英

从虚拟机访问主机变量

[英]Access host variable from virtual machine

我有一个react-app,我设置我的应用程序在启动应用程序时使用HOST变量在自定义URL上运行,类似于:

"scripts": {
    "start": "HOST=my-local-website.com ..."
}

我需要从Windows虚拟机访问此URL以在IE11上测试它,然后在设置HOST变量之前我只能从我的IP地址(192.168.X.XX:3000)访问它,更改了HOST变量不再起作用了。

有谁知道如何从虚拟机访问它? 先感谢您

  1. 我建议在单独的.env文件中设置环境变量,如dicumentation中所述

  2. .env文件集中HOST=my-local-website.com来更改主机(目前还不清楚为什么官方doc建议使用REACT_APP_为所有env变量添加前缀)

  3. 网站名称my-local-website.com映射到服务器的IP地址(在您的情况下为192.168.X.XX:3000 )是使用DNS完成的。 这与网络有关,而与您使用的框架无关。 因此,为了能够按名称访问您的站点,您必须在站点名称和IP地址之间建立映射

我对DNS的这个映射看起来像

my-local-website.com A 192.168.X.XX

但是对于测试purpuses,你可以使用简化的方法(我不认为你已经建立了DNS服务器)。 在Windows上,您可以使用位于C:\\Windows\\System32\\drivers\\etc文件夹中的hosts文件。 文件名为hosts 用任何文本编辑器(如记事本)打开它并添加字符串

192.168.X.XX  my-local-website.com

IP地址优先,名称最后。 不包括端口号(:3000),因为它与DNS无关。 应该在测试(客户端)PC上更改hosts文件,而不是在运行应用程序的PC上更改。

您还可以在运行应用程序的PC上修改主机,以检查主机是否已正确配置。

要检查一切是否正确,您可以像这样使用ping

ping my-local-website.com

如果正确配置了所有内容,则应打印IP地址。

  1. 如果在Windows主机上运行应用程序,则防火墙配置可能存在问题。 如果您的应用程序在启动但未在另一台PC上的同一台PC上打开,那么大多数可能是防火墙阻止了流量。 它可以是WIndows防火墙或防病毒软件(如果有的话)。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM