我认为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.... ");
由于你们大多数人都是体验开发人员,我想知道你们的脚本或需要修改的任何内容是否有任何改进。
答案 0 :(得分:2)
这似乎是一个坏主意...通常情况下,分析是指当用户不支持javascript时,他们的浏览器会解析html标记中包含的内容。通常在这些中您可以包含单个像素图像或类似的东西(图像的目的是调用您上面给出的代码)。使用此请求获取有关没有javascript功能的客户端的信息,而不是将每个人都放在同一条船上。
答案 1 :(得分:1)
如果您正在使用Apache,则无论如何都会在您的日志文件中记录这些内容。您可以使用类似http://awstats.sourceforge.net/的内容来分析它们。
如果您拥有值得分析的无JS启用流量,那么使用MySQL和PHP进行记录将会破坏您的服务器。
答案 2 :(得分:0)
正如上面提到的@Blowski,有更好的选择。我过去曾使用Mint,这是一项令人难以置信的服务。它是用PHP编写的,既美观又容易理解。
我鼓励您花一些时间查看feature highlights以及screencasts and screenshots,然后再花更多时间重新发明轮子 - 您的时间很宝贵。
答案 3 :(得分:0)
因为浏览器缓存和javascript,你会发现日志文件分析也不是100%准确。结合日志分析和页面标记是大多数网站的最佳选择。我过去几年都使用了Nihuo和谷歌分析,它们对我很有帮助。