繁体   English   中英

保存用户活动

[英]Save users activity

我是一名网络开发人员,我想设计一个商业网站来销售客户的产品。 买卖活动很重要,我需要维护用户活动信息以确保网站安全。

我想写一个动态的网站。 我想控制所有用户活动,然后决定是否将用户活动信息保存在数据库中。 网站的访问者中有些是注册用户,有些是匿名用户。 我想为注册用户保存在线信息,例如IP地址,用户名,页面名称和日期/时间。

我想知道:

  • 如何保存用户的IP地址?
  • 我还需要存些什么?

将每个HTTP请求详细信息保存到数据库中将适用于低流量的网站,但是在流行网站的情况下,您将遇到性能问题,因为写入数据库的操作速度相对较慢。

为什么不使用服务器HTTP日志呢?

所有HTTP Web服务器都创建纯文本日志文件,该文件记录远程用户的IP地址,请求的URL等。您可以通过编写自己的脚本或使用日志文件报告工具来创建活动报告。 AWStats( http://awstats.sourceforge.net/ )是最流行的开源工具之一。

在客户端,您可以使用Google Analytics(分析)来跟踪用户活动。 它还提供了跟踪自定义事件的方法:

_gaq.push(['_trackEvent', 'login', 'user_login', "custom data"]);

有关更多信息,请访问: http : //code.google.com/apis/analytics/docs/tracking/asyncUsageGuide.html

此选项仅跟踪启用了JavaScript的用户,因此不会显示漫游器,搜寻器或已安装分析功能阻止插件的用户。


我不确定我是否理解您的所有问题...但是至少要解决该问题的一个方面,如果用户位于代理之后,那么您将无法确定其真实IP。 这就是重点。 代理是发出请求然后转发的代理。 如果不亲自询问代理人,就无法确定。 关于您还需要保存什么,这完全取决于您要做什么,并且您还没有很好地解释为什么要保存此数据。 如果您可以澄清这一点,也许我们可以在确定应保存哪些数据方面为您提供更多帮助。

编辑为了澄清您的问题,如果您想疯了,可以记录一个人所做的一切。 他们单击的每个链接,他们查看的每个产品等等。我不一定会主张这样做,因为我觉得它有点令人毛骨悚然,但是绝对有一些网站可以做到这一点。 至少,我建议记录人们看什么产品,然后再买什么产品。 我还将按会话记录该信息。 基本上,人们会看什么产品,然后最终在您访问商店的同一趟购物。 我不会太担心“真实” IP地址。 大多数人不会成为代理人,而实际上,您将无能为力。

如何保存用户的IP地址?

$ _SERVER ['REMOTE_ADDR']

我还需要存些什么?

这是一个很奇怪的问题。 这是您的应用程序,而不是其他人的应用程序。 我们如何猜测您需要什么信息?

但是,我至少要指出一个问题:页面名称不足以记录“所有用户活动”。 查询字符串和POST数据通常包含有关该活动的重要详细信息。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM