【问题标题】:Detect new computer? On website检测新电脑?在网站上
【发布时间】:2011-06-09 14:23:05
【问题描述】:

如何检测新计算机何时登录到我的网站?

公共 IP 地址可以相同,因为您可以通过 1 个互联网连接共享多台计算机。

我可以使用 cookie,但这只会检测到新浏览器而不是新计算机! 1台电脑可以有IE、firefox、chrome!等等。

【问题讨论】:

标签: c# asp.net web-applications


【解决方案1】:

我预计(并希望)这是不可能的。如果我的浏览器正在传输识别我机器的信息,那么我需要一个新的浏览器。同样,您可能不应该期望能够收到此类信息。


更新

看来我必须更新我的期望:https://panopticlick.eff.org/

您可以使用浏览器指纹来很好地区分访问您网站的计算机。它不会是 100% 完美,但不会太短。

【讨论】:

  • @mquander 显然有我的浏览器和其他 1,614,770 名用户使用过该服务。我想我现在很安全!
  • 您确定您阅读的结果正确吗?我的浏览器在 1,614,777 个浏览器中具有唯一可识别的配置。
  • 有可能。我还没有弄清楚具体细节,因为我不得不转向更紧迫的项目,但这里有一个网站展示了其中的一些:browserspy.dk
【解决方案2】:

没有唯一的方法可以识别您网站的访问者。所有类型的 cookie 都会在某个时候被删除。您可能很想使用 Flash cookie,因为它们不依赖于浏览器,但我强烈建议您不要使用它,因为关于它们的法律争论很大。

您唯一的解决方案是使用基于您可以收集到的访问者的所有信息的启发式方法。这称为浏览器指纹识别。查看http://panopticlick.eff.org/ 了解有关该主题的最新研究。

【讨论】:

    【解决方案3】:

    您可以检查 HTTP_X_FORWARDED_FOR 标头,该标头应包含机器 C 类地址(例如:192.168.0.10),前提是它是由代理转发的。

    【讨论】:

      【解决方案4】:

      您可以在客户端设置一个 cookie 并在 session_start 中检查它,它不是 100% 的解决方案,但可以是一个解决方案

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2014-04-07
        • 2015-11-27
        • 1970-01-01
        • 1970-01-01
        • 2012-11-10
        • 2018-12-20
        • 2013-02-10
        相关资源
        最近更新 更多