我想使用php和mysql跟踪页面的所有视图。我将跟踪一个人查看该页面的次数和IP地址以及当前日期。但是有没有办法确保跟踪实际用户而不是机器人/蜘蛛?
答案 0 :(得分:1)
我看到两个选项:
2:不是一种万无一失的方式,但您可以将浏览器的User Agent字符串与已知网络浏览器的白名单进行比较。这个字符串可以被欺骗,因此它不是最可靠的。
就个人而言,我选择第一个选项。
对于蜜罐:
在您的主页上我添加如下内容:
<a href="totallyNotATrap.php" style="Display:none">ReallyNotATrap</a>
并在蜜罐页面本身就是这样的:
$BotIp=$_SERVER['REMOTE_ADDR'];
//DB connection
Insert into BlackList($BotIp,$Date,$otherDataYouCareAboutLogging);
//close DB Connection
然后,对于您的统计代码,只需将每个用户的Ip与BlackList表进行比较。如果用户不在其上,请记录统计数据。
修改
正如下面所指出的,googlebot可能会受到欺骗。如果这对您来说很重要(如果您只是过滤自己的统计数据而不过滤内容就不重要了),请将您的蜜罐页面包含在Robots.txt中。 Google将读取文本文件并避免陷阱。其他令人讨厌的机器人也会陷入困境。由于Google会避开我们的陷阱,我还会使用选项2并从统计信息中过滤掉Google的用户代理字符串。
答案 1 :(得分:0)
真实用户的数量应该与真实用户的数量基本相同 - 机器人。如果您愿意,可以查看用户代理,该代理将告诉您谁正在浏览该网站。
答案 2 :(得分:0)
你可以尝试我的跟踪脚本,实现非常简单,机器人和蜘蛛会成为一个双层浏览器,因此很容易将它们清除掉。我在我公司的所有网站上使用它来进行分析。但有一点需要注意,如果你使用它进行关键字跟踪,你可能会很快失望,因为谷歌已经开始change the structure of their query strings登录用户。