我有this ASP.NET web site允许用户下载程序安装包(只是普通文件)。我希望能够跟踪下载完成的时间(即文件已完全下载到用户的计算机),然后调用Google Analytics脚本,将完整的下载报告为“目标”(显然,我的目标之一是增加文件下载量。)
问题是我需要支持直接文件URL,而不是“重定向页面”解决方案。这是因为大量流量来自软件下载站点,这些站点在提交产品时明确要求直接文件URL。也许,他们进行自己的文件分析(即病毒检查)。但是有了这些限制,典型的情况是:
http://www.ko-sw.com/somefile.exe
如果在这些条件下,无法进行监控的确切解决方案,可能存在解决方法吗?我想到的是暂时在服务器上存储已执行下载的次数,然后访问管理页面,该页面以某种方式将此数字报告给Google Analytics并最终将其设置为零。通过此解决方法,至少不需要尝试将javascript处理程序附加到非HTML资源。但即便如此,也存在问题:
提前感谢大家
答案 0 :(得分:8)
更好的选择:让用户在安装网络软件后打开网页。示例:请参阅Keepass安装程序。
您可以在GA中跟踪此开放率并获取安装数量。
答案 1 :(得分:4)
根据awstats中止下载有http状态代码206,因此,如果您分析服务器日志以获取此类代码,则可以获得未完成的下载。
答案 2 :(得分:2)
@Kerido~我很好奇商业案例在这里。您是否尝试跟踪安装或下载?如果安装,请使用@SamMeiers解决方案。
但是,如果您正在尝试跟踪下载,那么下一个问题是您使用的是哪个网络服务器基础? IIS? Apache的?还有别的吗?
在IIS中,假设您正在使用7(或更高版本),您可以(轻松?)编写一个HttpHandler来检查要发送的文件的最后几个字节,然后在某处记录日志。
在Apache上,只需设置日志记录就可以告诉你传输了多少字节(httpd.conf中的一个微不足道的变化),然后每天解析日志(awstats [等等]对此非常有用,但你可能不得不写一个sed / awk脚本)并找出完成了多少完整传输。只是取决于你想要多么彻底。
但我回过头来看,这是什么商业案例?如果有未完成的下载,那有什么关系?
答案 3 :(得分:1)
答案 4 :(得分:0)
可以将链接作为目标进行跟踪,这可能对您有用。但是,这不会跟踪下载完成的时间。 http://www.google.com/support/analytics/bin/answer.py?answer=55529
希望这会有所帮助。 干杯 跳跳虎
答案 5 :(得分:0)
我认为@SamMeiers的解决方案非常好,但您可以在安装完成后通过调用Web服务进行优化,但如果在没有Internet的环境中安装应用程序但您可能会强制检查,则可能会发现一个小问题如果有互联网或没有。 您可以在安装start作为开始标志时创建任何触发器,然后在完成时检查是否存在开始标志,然后还下载并安装了应用程序。