制作我自己的网站分析


Making my own website analytics

我认为Google Analytics不是获得准确数字的最佳方式,因为浏览器中未启用JavaScript的用户不会被计算在内。因此,我想四处制作自己的Anylytics。

我有一个表格,它将记录用户的IP地址,页面URL和日期/时间。

然后,

我在网站上每个页面的底部都有一个脚本,然后它将运行SQL查询以将数据提交到数据库中。

这是脚本。

$page_viewed = mysql_real_escape_string($_SERVER['REQUEST_URI']);
if (!empty($_SERVER['HTTP_CLIENT_IP'])) {
     $ip=$_SERVER['HTTP_CLIENT_IP'];
} elseif (!empty($_SERVER['HTTP_X_FORWARDED_FOR'])) {
     $ip=$_SERVER['HTTP_X_FORWARDED_FOR'];
} else {
     $ip=$_SERVER['REMOTE_ADDR'];
}
$ip = mysql_real_escape_string($ip);
mysql_query("And then do the sql query.... ");

由于你们中的大多数人都是体验开发人员,我想知道你们是否对我的脚本有任何改进或任何需要修改的地方。

似乎是一个坏主意...一般来说,分析发生的情况是当用户不支持javascript时,他们的浏览器会解析html标签中包含的内容。通常,在这些图像中,您可以包含单个像素图像或类似的东西(图像的目的是调用您上面给出的代码(。使用此请求来获取有关没有 JavaScript 功能的客户端的信息,而不是将每个人都粘在同一条船上。

如果您使用的是 Apache,则所有内容都会记录在您的日志文件中。您可以使用类似 http://awstats.sourceforge.net/的东西来分析它们。

使用MySQL和PHP进行日志记录将杀死您的服务器,如果你有那种值得分析的不支持JS的流量。

如上所述@Blowski,有更好的选择。 我过去使用过Mint,这是一项令人难以置信的服务。它是用PHP写的,既美观又易于理解。

我鼓励您花一些时间查看其功能亮点以及截屏视频和屏幕截图,然后再花更多时间重新发明轮子 - 您的时间很宝贵。

由于浏览器缓存和javascript,您会发现日志文件分析也不是100%准确的。结合日志分析和页面标记是大多数网站的最佳选择。在过去的几年里,我都使用过Nihuo和谷歌分析,它们对我来说效果很好。