【问题标题】:How to change the domain name on a local deployed React app如何更改本地部署的 React 应用程序的域名
【发布时间】:2019-11-05 16:05:09
【问题描述】:

我有一个在 localhost 端口 3000 上运行的 react 应用程序,但我不想使用 localhost:3000,我想为 mydomain.com 设置一个自定义域名。我已经将 windows 主机文件更改为

127.0.0.1 mydomain.com

但我想我必须在我的反应应用程序中指定查看这个域而不是本地主机。我该怎么做?

我试过了:"start": "set HOST=videowall.com && set PORT=3006 && react-scripts start",

但它正在返回 Error: getaddrinfo ENOTFOUND videowall.com

【问题讨论】:

标签: reactjs dns


【解决方案1】:

您需要将此行添加到您的主机文件中:

  • Unix/Linux : /etc/hosts
  • 窗口:C:\Windows\System32\Drivers\etc\hosts
127.0.0.1 videowall.com

注意:如果您需要像我一样从开发机器中访问此内容,请将 127.0.0.1 更改为 0.0.0.0

在你的 React 项目的根目录中使用 .env 文件而不是导出/设置环境,包含以下内容:

HOST='videowall.com'
PORT=3006

就是这样。

【讨论】:

  • 这对我有用,但我不得不删除主机名周围的单引号。所以:HOST=videowall.com
【解决方案2】:

在您的 package.json 文件中进行以下更改

"start": "HTTPS=true HOST=mycompany.com PORT=3001 react-scripts start",

【讨论】:

    【解决方案3】:

    一般create-react-app 确实假定它托管在服务器根目录中。如果您想修改此行为,请参阅create react app documentation 获取相对路径。您可以在package.json 下的homepage 中指定它。

    "homepage": "http://mywebsite.com/relativepath",
    

    根据您对错误的描述,我建议修改您的主机文件应该没问题。您应该检查该域是否在本地解析为正确的 IP。

    在 mac/unix 上试试 traceroute mydomain.com 在 Windows 上尝试tracert mydomain.com

    【讨论】:

      【解决方案4】:

      如果您使用的是 webpackdevServer 中有一个名为 host 的属性,您可以在那里更改应用程序的主机名。

      【讨论】:

        猜你喜欢
        • 2017-02-01
        • 2018-03-26
        • 2014-06-28
        • 2015-12-17
        • 1970-01-01
        • 1970-01-01
        • 2013-04-05
        • 1970-01-01
        • 2016-07-24
        相关资源
        最近更新 更多