我现在正在网站上工作。整个网站都受到保护,因此只有登录用户才能访问此网站(只要正在运行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=,但是如果我按下了类似按钮,它会将抓取工具重定向到注册页面。
有不同的facebookCrawler吗?还是有更好的可能性?
感谢您的帮助。
答案 0 :(得分:1)
两个功能都应使用相同的用户代理 当前部署的抓取工具具有用户代理
FacebookExternalHit/1.1
或
FacebookExternalHit/1.0
理论上,版本号可以在某个时刻递增,但目前它是1.0或1.1