Facebook/Twitter OpenGraph不在Node.js/Angular.js Web应用程序上刮擦图像



我最近在一个卑鄙的堆栈应用程序上工作,这是一种以某种方式的博客,作者发表文章。为了克服未刮擦JavaScript的OpenGraph应用程序的问题,我在我的NGINX反向代理上实现了一个静态PHP页面和规则,该页面将某些用户代理(例如Facebook,Google Twitter,Twitter等)重定向到静态页面,in static page,in为了正确刮擦数据。

一切都很好,除了一个小细节外,基于OpenGraph的应用程序似乎无法刮擦文章中的图像,因此丰富的社交共享无法正常进行。

例如,测试以下链接:https://moveramontanha.pt/article/5A21539CFDEBBBB1074ED1436D

将重定向到静态页面:

https://www.moveramontanha.pt/static_mam.php?id=5A21539CFDEBB1074ED1436D

  • Facebook共享调试器给出以下错误 - 随机:

提供的不支持图像文件扩展名:图像URL, https://www.moveramontanha.pt/uploads/authors/1512141975423.jpg做 没有支持的扩展。

提供的" OG:Image"属性尚不可用,因为新 图像是异步处理的。确保新URL的股份 包括图像,使用" OG:Image:width"和 'OG:图像:高度'标签。

  • Twitter卡验证器日志:(无图像)

信息:成功获取的页面成功信息:找到了17个metatags信息: Twitter:card =摘要标签找到信息:卡已加载的卡成功警告: 这张卡被重定向到 https://www.moveramontanha.pt/static_mam.php?id=5A21539CFDEBBB11074ED1436D

我尝试添加额外的标签,例如图像宽度/高度,更改的图像格式,安全标签等。

没有任何作用。

其他人遇到了这样的问题吗?

预先感谢!

对于Twitter的卡爬车手,这里和这里都有深入的故障排除常见问题。

我只是尝试了以下请求来获取页面中引用的图像:

curl -L -A Twitterbot -v https://www.moveramontanha.pt/uploads/authors/1501255270817.jpg

这返回HTML页面,而不是JPEG图像。这意味着Twitter的卡爬虫无法获取有效的图像。

您应该修复服务器以将有效的JPEG映像返回到Twitterbot用户代理。

相关内容

最新更新