我们已经使用CRA和Router构建了一个React应用。我们希望在其上实施SSR,以便我们能够获得适当的SEO和社交媒体支持。我已经看到并尝试了许多可用的技术,但是这些似乎都不起作用。
我们制作应用程序的方式实际上实际上取决于浏览器的正常运行,例如window
对象。一种(某种)可行的技术,但是在服务器端运行代码会产生错误;
ReferenceError: 'window' is not defined
我们要实施SSR的主要原因是对该网站的SEO和社交媒体认可。我们正在动态添加元标签(使用React Hemlet),因此facebook,twitter等无法获取标签。
所以现在的问题是;
在已经构建的反应站点上是否有实施SSR的正确方法?
我们还有其他选择吗?该站点具有从远程API端点获取的大量资源,因此无法进行预渲染。
您始终可以在内置的React网站上实施SSR。您将使组件保持不变。
但是,您可能需要在应用程序的入口点进行修改。而且您还需要在应用程序中创建一个嵌入式服务器,它将成为您的SSR。
为此,您需要进行自己的Webpack配置。
您可能需要一个开发人员;)
[如果由于SEO而需要SSR。我想使用Prerender https://prerender.io/。即使它是由React构建的,这也使我们的网站支持SEO。