【发布时间】:2021-02-08 10:06:41
【问题描述】:
我已经使用 NextJS 构建了我的项目并将其部署在 Vercel 上。我的项目的 Vercel URL 是https://my-project.vercel.app。我的域(添加到 Vercel 仪表板中的项目设置)是 www.example.com
当我使用 Facebook Sharing Debugger 检查特定 url 上的元标记时,当使用 my-project.vercel.app 域而不是我的实际域 www.example.com 时,元标记被正确拾取。项目在浏览器中正确加载,包括两个域的元标记。
例如,对于我网站上的 url /foo,OG 标记被正确提取为 https://my-project.vercel.app/foo,但不适用于 https://www.example.com/foo。
看看这些屏幕截图。请注意,屏幕截图中显示的域 (esourcing.in) 已添加到 Vercel 仪表板中的项目 esourcing-frontend.vercel.app。
这是我浏览器的截图:
【问题讨论】:
-
两者的规范 URL 不同,第一个设置为相同的 URL,第二个设置为项目的 base URL然而。 (也就是说,根据您的屏幕截图。实际上,两个版本似乎现在都将
og:url设置为https://www.esourcing.in,如果您想分享/uneefy页面的实际内容。) -
@CBroe 在我的代码中,我设置了正确的规范网址。它在浏览器中运行良好。然而,规范 url 看起来不同,因为 Vercel 导致 Facebook 爬虫获取不正确的数据。它是同一个项目(两个 URL 都指向同一个项目)。所以爬虫应该在两个域上看到相同的
/uneefyURL 数据。我已将浏览器中的屏幕截图添加到我的问题中。 -
再看一遍@CBroe 是对的。由于我的代码中的错误,当爬虫获取页面时,规范 URL 不正确。详情请参阅我的回答。
标签: facebook-graph-api next.js facebook-opengraph server-side-rendering vercel