3

我现在正在网站上工作。整个网站都受到保护,因此只有登录的用户才能访问此网站(只要beta测试正在运行 - >时间有限)。facebook(不同?)用户代理从喜欢和共享的爬虫?

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

为了给为Facebook抓取工具访问我建立这个保护:

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

好的,我发现了。两者都使用相同的爬行器。在我的情况下,一个Like Button在我构建Facebook访问前被击中。一切正常,无论如何感谢您阅读,也许想想这个。 – planIT

回答

1

两个特征应使用相同的用户代理 当前部署的抓取工具的用户代理

FacebookExternalHit/1.1 

FacebookExternalHit/1.0 

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

+0

只是我正在寻找的信息,谢谢。 :)我赞成你的答案,非常感谢。 –