Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/232.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使用php跟踪相关视图_Php_Mysql_Statistics - Fatal编程技术网

如何使用php跟踪相关视图

如何使用php跟踪相关视图,php,mysql,statistics,Php,Mysql,Statistics,我想使用php和mysql跟踪页面的所有视图。我将跟踪一个人浏览网页的次数和ip地址以及当前日期。但是,有没有办法确保您跟踪的是实际用户而不是机器人/蜘蛛?实际用户的数量应该与实际用户(机器人)的数量基本相同。如果您愿意,您可以查看用户代理,它将告诉您谁正在浏览网站。我看到两个选项: 在你的主页上创建一个“隐藏”链接到一个链接。任何一个点击蜜罐页面的人都应该被视为机器人,不包括在你的统计数据中 2:这不是一个简单的方法,但是你可以将浏览器的字符串与已知web浏览器的白名单进行比较。此字符串可能被

我想使用php和mysql跟踪页面的所有视图。我将跟踪一个人浏览网页的次数和ip地址以及当前日期。但是,有没有办法确保您跟踪的是实际用户而不是机器人/蜘蛛?

实际用户的数量应该与实际用户(机器人)的数量基本相同。如果您愿意,您可以查看用户代理,它将告诉您谁正在浏览网站。

我看到两个选项:

  • 在你的主页上创建一个“隐藏”链接到一个链接。任何一个点击蜜罐页面的人都应该被视为机器人,不包括在你的统计数据中
  • 2:这不是一个简单的方法,但是你可以将浏览器的字符串与已知web浏览器的白名单进行比较。此字符串可能被欺骗,因此它不是最可靠的

    就我个人而言,我赞成第一种选择

    对于蜜罐:

    在您的主页上,我会添加如下内容:

    <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与黑名单表进行比较。如果用户不在上面,记录统计数据

    编辑


    正如下面所指出的,谷歌机器人可能会被这一点所欺骗。如果这对你来说很重要(如果你只是过滤你自己的数据,而不是过滤内容,那就不重要了),在你的Robots.txt中包含你的蜜罐页面。谷歌将读取文本文件并避免陷阱。其他讨厌的机器人也会掉进去。由于谷歌将避免我们的陷阱,我还将使用选项2并从统计数据中过滤掉谷歌的用户代理字符串。

    你可以试用我的跟踪脚本,它的实现非常简单,机器人和蜘蛛将作为一个双层浏览器出现,因此很容易清除它们。我在公司的所有网站上都使用它进行分析。不过有一个警告,如果你用它来跟踪关键词,你可能很快就会失望,因为谷歌已经开始为登录用户提供服务


    我会使用Google Analytics或类似awstats的Apache日志分析器。你需要几个月的工作才能接近这两个选项中的任何一个。是否可能重复?说得好。我将包括robots.txt。谷歌机器人也会这么做的好吧,我现在明白你的解决方案了。有趣的概念。我们在我的工作中用过类似的东西。到目前为止,它运行得相当好。