检测Facebook为推荐人?

时间:2013-08-17 06:22:28

标签: php facebook referrer

我有这个禁用正常访问的封闭式测试网站 - 访问者必须先登录才能查看该网站。我还有一个秘密的Facebook小组,我们经常在这里分享网站文章的链接(供讨论)。问题是,当我们粘贴链接时,Facebook会尝试进行预览并失败,因为它被认为是未登录的用户。所以简而言之,我希望该网站是公开的仅限于Facebook 。这些是我提出的解决方案:

  1. 检测引荐来源:失败,引用者是空的 - 也许是因为FB从HTTP浏览网站?
  2. 检测客户端IP:不确定。 FB服务器是否有固定的IP地址?
  3. 搜索FB在浏览我的网站时使用的“Facebook查询字符串” - 类似于mysite.com/?from=I'm-Facebook-Bitch:到目前为止没有结果。
  4. 你怎么看?有没有可靠的方法来完成这项任务?提前谢谢。

3 个答案:

答案 0 :(得分:4)

好的,我在这里找到了解决方案:https://developers.facebook.com/docs/reference/plugins/like/

我们可以检查FB scraper的用户代理($_SERVER['HTTP_USER_AGENT']),而不是检查IP或引用者。值为facebookexternalhit/1.1 (+http://www.facebook.com/externalhit_uatext.php)

希望它可以帮助别人。

答案 1 :(得分:0)

为什么不向“封闭的”Facebook群组发布“秘密”链接。该链接是唯一的,如果您访问该链接,则无需登录。

然后Facebook可以在没有任何秘密伏都教魔法的情况下访问 - 并且'封闭'组可以访问该文章。

例如:

www.example.com/articles/my-article   <- you need to be logged in to see this

www.example.com/special-hidden-link/special-hidden-article   <- no login required

所以只需将“隐藏链接”发布到Facebook群组 - 他们都可以看到文章

答案 2 :(得分:0)

添加GET参数作为访问网站的密钥,并在密钥有效后设置cookie。