问题:
我已将 React 应用程序部署到我公司的内部云中。它与 Cloud Foundry 配合使用。该应用程序运行得非常好,但有一个问题。每当我刷新应用程序并且 URL 未指向根目录(例如 myapp.ourcloud.com/my-route)时,我都会从 Nginx 收到错误 404。
我正在使用的:
该应用程序是一个简单的 React 应用程序。除了 React Router V4 之外,没有安装任何特殊模块。代码非常简单,我使用 BrowserRouter 作为应用程序的子项。只有 3 个组件可以通过 <Link To=.../>
进行简单路由。和<Route path={.../>
...如前所述,非常基本。
到目前为止我尝试过的:
我在根目录中添加了一个静态文件 pushstate: enabled
如 Cloud Foundry documentation 中所述.
最佳答案
我刚刚自己找到了答案。我将把它发布在这里供 future 的用户使用:
我的manifest.yml 文件包含以下内容:
...
path: build/
...
您只需将 Staticfile 放入 React 的 build/文件夹中,而不是放在项目根目录中。另请注意,每次构建项目时,静态文件都会被删除。
关于reactjs - Cloud Foundry 上的 Nginx 404 页面重新加载,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54232082/