3

我现在在一个网站上工作。整个网站都受到保护,因此只有登录用户才能访问此网站(只要 beta 测试正在运行 -> 时间有限)。

我们的网站上有两种不同类型的共享。一个是简单的“喜欢”按钮,另一个只是使用: http ://www.facebook.com/sharer/sharer.php?u= {URL}

为了给 facebook Crawler 提供访问权限,我建立了这个保护:

if(wUserCur::isLoggedIn() || in_array($currentPath, $allowedLogins) || strstr($_SERVER['HTTP_USER_AGENT'], 'facebookexternalhit')):
    // do nothing
else:
    wResponse::redirect('/de/register/index.php');
endif;

我知道它不安全,但这个网站不应该被分类。

这里最重要的是,这适用于http://www.facebook.com/sharer/sharer.php?u=非常好,但如果我点击“like”按钮,它会将爬虫重定向到注册页面。

有不同的 facebookCrawler 吗?还是有更好的可能性?

谢谢你的帮助。

4

1 回答 1

1

这两个功能应该使用相同的用户代理 当前部署的爬虫具有用户代理

FacebookExternalHit/1.1

或者

FacebookExternalHit/1.0

理论上版本号可能会在某个时候增加,但目前它是 1.0 或 1.1

于 2011-09-21T10:29:26.620 回答