如何使用服务器端呈现在生产中部署React App

时间:2018-02-19 12:59:37

标签: reactjs deployment ssr

我使用create-react-app创建了我的应用程序。它与SSR一起工作正常。一切都已到位,但我不知道如何部署它? 我理想的是: 生成一个构建文件夹,并以cdn格式上传。想从那里提供我的静态资产。 我想从我的代码创建一个发行版并将其转移到另一台机器上进行部署。我无法弄清楚如何做突出显示的部分。如何为服务器创建捆绑包? npm run build为客户创建我的包。

PS:我在我的应用程序中使用React路由器4,Redux等React库。希望这不会影响我的答案。 对于SSR,我使用了快递。

2 个答案:

答案 0 :(得分:0)

服务器端呈现意味着您需要一台服务器(express)来满足所有请求:服务器呈现的页面,包括静态资产。因此,CDN是不够的。 您可能想尝试以下支持节点服务器的免费云服务:

您可以使用带有target: "node"的Webpack和https://www.npmjs.com/package/webpack-node-extenals来创建服务器捆绑软件。

细节可能很复杂,因此您可以访问https://github.com/antonybudianto/react-ssr-starter/blob/master/config/webpack.server.config.babel.js作为参考。

答案 1 :(得分:0)

我尝试了 whit Firebase,但我不能,在函数的文档中说执行函数不能超过 60 秒,而我的函数需要更多。 当我部署其他基本功能时,它部署没有问题。 如果你实现部署它,给你一个状态 403,因为你必须把这个功能放在公共模式。

如果您想部署一个带有 SSR 的应用程序,使其成为 Express,就像在我的情况下一样,您可以像部署 API 一样部署它。 您也可以使用 AWS 或 Google 云通过 Doker 部署它。

Heroku 是最简单的方法,但我不想把我所有的应用都放在这里。