在 Angular 4/5 中,是否可以只预呈现来自 Facebook 和 Twitter 爬虫的请求,而不是预呈现每个请求

In Angular 4/5, instead of prerendering each request, is it possible to prerender only request that coming from Facebook and Twitter crawler

在 Angular 4/5 中,是否可以只预呈现来自 Facebook 和 Twitter 爬虫的请求,而不是预呈现每个请求,即当用户在 Facebook 或 Twitter 上共享这些 URL 时。 我在想,如果我们可以使用反向代理来实现类似的东西,如果请求来自 Facebook 或 Twitter 机器人,那么我可以从预呈现 Angular 代码的不同环境中为它们提供服务。

我有一个无法缓存的动态网站,而且由于流量大,预呈现每个请求效率低下。

好的,所以我找到了 2 个解决方案。

  1. Google、Facebook、Twitter 等爬虫都有自己的用户代理,即
googlebot
bingbot
twitterbot
facebookexternalhit
linkedinbot

因此,在 apache 或 nginx 中,我们可以编写条件以仅预呈现来自机器人的请求。

  1. 用任何语言创建一个应用程序以仅动态提供 Angular 应用程序的 index.html 文件,您在 运行 时间嵌入 og 元标记请求 url.

    希望此解决方案对某人有所帮助。