React主页属性不起作用

在我的package.json文件中,我有"homepage" : "http://myname.project.com/myapp",

我使用npm run build构build应用npm run build ,输出结果确认创build了一个/ build目录。 输出:

build 102.97 KB / static / js / main.bfa46b52.js

24.37 KB build / static / css / main.cfe8a47e.css

该项目是假设它在/ myapp /托pipe的。 你可以用你的package.json中的主页字段来控制它。

生成文件夹准备好部署。

如果我使用npm startserve -s build启动应用程序,那么应用程序将启动并加载index.html页面,但是来自index.html的静态资源的引用被破坏(/myapp/static/js/main.js和/myapp/static/css/main.css)。 (localhost:5000 / static / js / main.js工作; localhost:5000 / myapp / static / js / main.js不起作用),我可以直接导航到他们。

如果我将构build文件夹部署到/ myapp目录下的其他普通旧apache服务器,它似乎按预期工作。 有什么办法可以configurationserve -s build服务从/ myapp目录中的页面?

该应用程序目前是一个没有链接的页面,没有实现反应路由器或任何等效的东西。 该团队已经使用webpack,但删除它。 应用程序使用react-scripts捆绑在一起。

我不清楚有两件事情正在发生。

  1. 设置主页属性对index.html进行了修改,以便在部署到/ myapp目录时可以正常运行。
  2. 运行npm startserve -s build/仍然从内置的静态服务器的根目录中部署我的应用程序。

主页属性与您的应用程序实际部署的位置无关。 为了解决这个问题,我使用了一个postbuild脚本将我的/ build文件夹的内容移动到/ build / myapp文件夹中。 然后它按预期工作。

所以在这里更多的讨论: https : //github.com/facebookincubator/create-react-app/issues/1354#issuecomment-311506599