如何使用CRA为已构建的React应用程序实现SSR?

问题描述 投票:0回答:2

我们已经使用CRA和Router构建了一个React应用。我们希望在其上实施SSR,以便我们能够获得适当的SEO和社交媒体支持。我已经看到并尝试了许多可用的技术,但是这些似乎都不起作用。

我们制作应用程序的方式实际上实际上取决于浏览器的正常运行,例如window对象。一种(某种)可行的技术,但是在服务器端运行代码会产生错误;

ReferenceError: 'window' is not defined

我们要实施SSR的主要原因是对该网站的SEO和社交媒体认可。我们正在动态添加元标签(使用React Hemlet),因此facebook,twitter等无法获取标签。

所以现在的问题是;

  1. 在已经构建的反应站点上是否有实施SSR的正确方法?

  2. 我们还有其他选择吗?该站点具有从远程API端点获取的大量资源,因此无法进行预渲染。

javascript reactjs babel router ssr
2个回答
0
投票

您始终可以在内置的React网站上实施SSR。您将使组件保持不变。

但是,您可能需要在应用程序的入口点进行修改。而且您还需要在应用程序中创建一个嵌入式服务器,它将成为您的SSR。

为此,您需要进行自己的Webpack配置。

您可能需要一个开发人员;)


0
投票

[如果由于SEO而需要SSR。我想使用Prerender https://prerender.io/。即使它是由React构建的,这也使我们的网站支持SEO。

© www.soinside.com 2019 - 2024. All rights reserved.