将 angular2 页面预渲染为纯 HTML

Prerender angular2 pages as pure HTML

我的问题是 facebook 和 twitter 机器人不执行 javascript,我需要在我的项目中使用元标记,以便在这些平台上分享时显示正确的 image/title/message。

我有一个 nginx 服务器将 angular2 内容作为静态文件提供。

现在我想以某种方式为这些机器人预呈现页面。更具体地说,我想将机器人重定向到一个实例,例如 phantomJS,它会预呈现页面。我希望该实例 运行 作为不同 IP 上的单独服务,这样我也许也可以将它重新用于其他用途。

我不知道从哪里开始,如何开始。是否有任何 nodejs 服务器包,谁知道如何为我做?

最终安装了自托管版本的 prerender (https://github.com/prerender/prerender) 并通过 nginx 将机器人路由到它。效果很好!