我正在通过发布他们玩Facebook的链接。第一次来自包含“facebookexternalhit”的用户代理的访问将访问您的网站并查找some meta tags。如何强制facebookexternalhit重新访问?
到目前为止这么好,工程。但是,如果我尝试重新发布链接,则不会发生任何调用。我如何触发让Facebook再次阅读该页面?
是否有一些API调用可用于触发更新?
为 Like Button它说,在文档中我正在通过发布他们玩Facebook的链接。第一次来自包含“facebookexternalhit”的用户代理的访问将访问您的网站并查找some meta tags。如何强制facebookexternalhit重新访问?
到目前为止这么好,工程。但是,如果我尝试重新发布链接,则不会发生任何调用。我如何触发让Facebook再次阅读该页面?
是否有一些API调用可用于触发更新?
为 Like Button它说,在文档中:
什么时候Facebook的刮我的网页?
Facebook需要刮你的网页,知道如何显示它围绕 该网站。
Facebook每24小时刮一次您的页面以确保属性为 最新。当Open Graph 页面的管理员单击“Like”按钮时以及将URL输入到 Facebook URL Linter中时,该页面也会被抓取。 Facebook会在您的网址上观察缓存标头 - 它会按照首选项的顺序查看“过期”和“缓存控制”。 但是,即使您指定的时间较长,Facebook也会每24小时刮一次您的 页面。
刮板的用户代理是: “facebookexternalhit/1.1 (+ HTTP://www.facebook.com/externalhit_uatext.php)”
的短绒是现在已知的Facebook Debugger和时你使用它作为url,它会清除facebook缓存中的相同url,然后缓存新的结果。
您可以使用的一个技巧是简单地将“随机”GET参数附加到您共享的URL。它不会对页面内容产生任何影响,但会导致Facebook的刮板机器人重新访问您的网站。
原始网址:
http://example.com
http://example.com?param=1
新网址将强制 “重新访问”:
http://example.com?cache_buster=784932789532
http://example.com?param=1&cache_buster=784932789532
但我不使用如按钮呢。我只是在谈论发布链接。这是否以同样的方式威胁?用户发布会在24小时后更新吗? – rekire 2012-04-18 07:54:46
我只是从Like Button文档中获取了该部分,但具体信息更一般。他们可能应该找到另一个地方来放置它,但现在它在那里。重点是使用调试器可以强制缓存清理,只需尝试一下。 – 2012-04-18 07:58:22
感谢关于Facebook调试器的信息,在mod_security拒绝facebookexternalhit之后,我能够强制新的刮擦,并删除了规则。 – dangel 2016-01-27 05:00:22