【问题标题】:Determine how many users viewed a page确定有多少用户查看了一个页面
【发布时间】:2010-06-19 16:20:13
【问题描述】:

我正在使用 C# 编写一个组件,以记录有多少独特的查看者查看了我的网站/页面,确保同一用户重新访问不会被记录两次。编写这样一个组件的有效方法是什么?您是否跟踪 cookie 或会话对象? 我会记录他们的 IP 地址(不是静态的)或计算机名称吗? 此信息将存储在数据库中(据我所知)

谢谢。

【问题讨论】:

  • 您无法获取他们的计算机名称。它从未通过 interwebz 发送。您可以检查具有打开连接的请求是否是具有该连接的第一个请求。我不太了解 ASP.net,所以我不知道您是否可以访问 http-connections 的信息。

标签: c# asp.net .net-3.5 visitor-statistic


【解决方案1】:

为什么要重新发明轮子?使用Google Analytics - 它是免费的,非常容易实现,提供比您想要的更多的统计信息,并且可以提供(尽可能使用cookies)独特的访问者统计信息。如果您确实需要将数据存储在数据库中(为什么?),那么您可以使用 Google Analytics API 来获取它并使用它做您想做的事情。

【讨论】:

  • API 链接 +1,不知道 Google 有一个用于分析的链接。
  • 如果不是数据库,您会将数据存储在哪里?我愿意重新装备。非常感谢 Google 的建议。
  • 好吧,我不知道您需要对这些数据做什么 - 但如果它已经存储在 Google 中,那么您是否需要在本地复制该存储?或者您可以通过 API 直接从 Google 查看/操作它吗?
【解决方案2】:

是的,您可以记录 IP 地址,如果您使用传统登录方案(如果使用会员用户),此Link 可以指导您。在IP 上查看这个问题,它会告诉您如何收集 IP。如果您获得主机的MAC,这不是一个坏主意,这样您就可以轻松确定唯一访问者跟踪。

【讨论】:

  • MAC 不会发送到第一个路由器之外是吗?
【解决方案3】:

人们说记录 IP 是个坏主意,因为您可能会遇到数百人在同一个 IP 后面的情况,这是事实,但是,使用 IP 地址仍然会给您一个具有统计意义的数字。

如果您的应用程序的核心是保证唯一性,那么很遗憾,这是不可能以有保证的方式做到的。

【讨论】:

    【解决方案4】:

    记录 IP 地址并不是一个好主意,因为许多人实际上使用 NAT 从他们的本地网络访问 Internet。这么多人在你看来是一个人,因为他们都有相同的公共 IP 地址。如果您在 Intranet 上,这可能有效,但绝对不适用于公共网站。

    更好的解决方案是将 GUID 写入用户计算机上的 cookie 并存储在您的数据库中。然后以后再找那个cookie,和数据库中的值比较。

    【讨论】:

      【解决方案5】:

      IP 地址的唯一访问始终是个问题,因为您的组织可能拥有一个唯一 IP,但该 IP 背后有数百人。

      我认为 cookie 是你最好的选择。

      我认为您有理由不使用统计或分析包?

      【讨论】:

      • 统计或分析包?有免费的吗?除了成本,它涉及的配置(相对于开发可重用的组件)
      • 谷歌分析? google.com/analytics 它只需要在您的页面上添加几行 Javascript。编辑:我猜你可以忽略这个,因为你更新了原始问题。由于您需要将统计信息存储在数据库中,因此现成的软件包可能不适合。
      【解决方案6】:

      IP 地址和 Cookie 各有取舍。单个用户可能会从 wifi 热点跳到 wifi 热点,从而丢掉您的 IP 指标。许多用户可能使用相同的 IP 地址(雇主、ISP、代理等)。所以IP地址不会完全准确。

      另一方面,单个 IP 的单个用户可以通过多个浏览器或设备访问您的网站,因此 cookie 不会完全准确。

      从家里和工作中访问您网站的用户会怎样?一位访客,两个(至少)唯一的​​ cookie和 IP 地址。

      选择最适合您的无效数据。

      【讨论】:

        猜你喜欢
        • 2020-01-26
        • 2014-01-06
        • 2018-10-02
        • 2018-03-04
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2015-07-20
        相关资源
        最近更新 更多