2

我通常会使用谷歌分析,因为它是免费且易于实施的,但在这种情况下,我们需要一个内部构建的报告系统。该系统只需要在 .NET 中,因为 JavaScript 不是一个选项。

我的问题是,当您永远无法确定他们是否打开了 cookie 时,您如何跟踪唯一访问者?

我打算通过设置一个带有 GUID 的 cookie 来跟踪它们,然后针对每个页面点击将此 ID 存储在数据库中。问题是,如果他们没有启用 cookie,就不可能知道您是否在每次访问页面时都创建新的 cookie,因为最后一个 cookie 由于它们被禁用而实际上没有被接受。您显然不能使用会话来跟踪它,因为它们在同一条船上。

我想你们中的一些人会说创建几个页面,在用户进入网站之前检查 cookie,但这无济于事,因为用户不会总是从网站上的一个点进入。

谷歌必须设法做到这一点,尽管他们使用 JavaScript。

创建新的跟踪 ID 存在问题的原因是,与应有的情况相比,它会使我的报告失控。假设我有 4 个用户访问,每个用户访问 10 个页面。如果一个用户没有启用 cookie,它会说该网站有 13 个唯一身份访问者。

4

3 回答 3

2

首先,唯一用户始终是一个近似值。没有保证强制使用 cookie 的方法,它们的持久性无论如何也不能完全由您控制,而且 IP 通常代表用户的块(有时是大量的)。这方面的数据质量不好,你只能接受。

是 cookie 分析的一个很好的入门。

根据我的经验,跟踪 IP 至少提供了一个安全的下限,但您仍在谈论模糊数据。

我知道的所有其他 cookie 替代品都只是暂时的。

其次,“ JavaScript 不是一个选项”是什么意思?关闭 JS 会严重限制 ASP.NET 功能(恕我直言),您的选择将更加有限。这是你期待的状态吗?

于 2008-12-03T09:00:30.117 回答
0

当他们/用户使用您的第一页时,我会建议您在您的数据库中通过服务器端代码跟踪用户,例如当他们登录页面时:

借助这个:HttpBrowserCapabilities browser = Request.Browser; 您将获得诸如正在使用哪个浏览器、是否设置了 cookie 等信息……然后根据是否设置了 cookie,您可以操作/跟踪所需的信息。

于 2008-12-03T08:42:25.597 回答
0

首先,你永远不会得到 100% 的准确率。时期。话虽如此,您可以做一些事情。

我开始输入如何构建无 cookie 跟踪机制,当我完成一半时,我对自己说:“我自己,ASP.NET 肯定会支持这种开箱即用的东西吗?”。确实:无 Cookie 会话 ID。这至少可以让您确定哪些请求来自单个会话中的特定(尽管仍然是匿名的)用户。

不确定是否可以将其与使用 cookie 混合使用(如果它们可用)(这将产生更好的 URL,并可能让您有机会跨会话跟踪用户),但这可能是一个开始。

于 2008-12-03T09:04:01.000 回答