【问题标题】:How can I track downloads of files from remote websites如何跟踪从远程网站下载的文件
【发布时间】:2023-03-05 10:53:01
【问题描述】:

我正在共享存储在我的服务器中的文件(例如 pdf)的链接。是否可以在某些用户下载文件时进行跟踪?我无权访问其他页面的脚本,但我认为我可以跟踪到我的服务器的传入请求。这在计算上会很昂贵吗?有什么建议往哪个方向看吗?

【问题讨论】:

    标签: google-analytics download server


    【解决方案1】:

    您可以使用measurement protocol,这是一种与语言无关的对 Google Analytics 跟踪服务器的 http 跟踪请求的描述。

    您的问题是在点击和下载之间没有脚本来发送跟踪请求。一种可能的解决方法是使用服务器访问日志,前提是您对服务器有一定的控制权。

    例如,Apache Web 服务器可以使用 piped logs,例如相反,如果直接写入文件,则日志条目将传递给脚本或程序。我有理由确定其他服务器也有类似的东西。

    您可以将日志通过管道传输到一个脚本,该脚本评估日志条目是否指向您的 pdf 文件的 URL,如果是,则将信息分解为单独的数据字段,并通过您选择的编程语言将它们发送给 GA跟踪服务器。

    如果您无法将服务器控制到该级别,则需要在服务器上放置与原始文件具有相同名称和位置的脚本,将 pdf 扩展名映射到您选择的脚本解释器(在 apache 中通过 @ 987654323@,许多主机可以通过 htaccess 文件完成)并让脚本在发送原始文件之前发送跟踪请求。

    这两种解决方案都需要少量的编程实践(后者比前者少得多)。管道日志可能很昂贵,具体取决于对服务器的请求数量(不过,您可能会为可下载的文件创建一个额外的日志文件)。中间脚本不会是一项昂贵的操作。

    【讨论】:

    • 按照您上面的建议,我已经设法跟踪所有正在发生的活动。我实际上正在跟踪我的 tomcat 服务器中的所有传入请求,然后我可以根据一些特定的关键字过滤它们。我有一个问题,也许你可以澄清一下。是否有可能以某种方式知道他们“从哪里”点击了链接?如果它来自外部网站或来自我的网络应用程序。现在我得到 127.0.0.1 - - 或 0:0:0:0:0:0:0:1 - -
    • 您需要使用服务器端脚本捕获用户的 IP 地址,然后通过 IP 覆盖参数 developers.google.com/analytics/devguides/collection/protocol/… 传递给 Google
    • 我在想..因为我是在那个远程网站上发布这个 URL 的人(我不是管理员,但我可以访问),我可以在末尾添加一个字符串我的网址(例如domain?parameter=parameter&parameter_2=paraemeter_2&MY_…) 这样我就可以在我的日志文件中查找它。这有意义吗?
    • 我从字面上理解了“从哪里”,认为您的意思是地理数据(根据 IP 地址计算得出)。如果您正在考虑广告系列跟踪,是的,您应该添加参数并将它们映射到您的测量协议调用中的源/媒介/广告系列字段。
    • 这可能是一个愚蠢的问题..但是添加任意参数不会对请求造成任何问题?或者他们只是忽略了?
    猜你喜欢
    • 2010-10-08
    • 2017-07-05
    • 2010-09-05
    • 2016-10-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多