是否可以在不使用会话或 cookie 的情况下跟踪未登录的用户?有没有更靠谱的方法呢?
就像www.filefactory.com或其他类似的下载空间网站一样,他们可以跟踪您是否是免费用户并发送下载请求,在开始下一次下载之前您必须等待x次,我以为它使用了session或cookie,但是在清除session之后和cookie或改变IP地址,它仍然是一样的。
我是一个尝试创建网站的新手,我必须在登录之前跟踪用户,就像这个示例网站一样,我使用 php 和 javascript 设置会话和超时来保持捕获用户状态(在目录中写入文件或...
我已经搜索了很长时间,如果有人知道任何教程或只是一点线索如何像这个网站那样做,我将不胜感激。
Thanks!
您不会跟踪未登录的人,而是跟踪已登录的人。因此,默认情况下,每个人都会获取链接,因为您必须等待 xx 秒。如果您清除 cookie 并启动新会话,您仍然是默认用户。
现在,当有人登录时,您可以放入他已通过身份验证的会话。然后在页面上显示您检查的链接。现在,如果该登录用户清除他的cookie,他将再次成为默认用户,直到他再次登录。
//not actual php code
if (authenticated) {
//show direct download link
} else {
//show link after xx seconds
}
如果您不想使用会话来跟踪登录的用户,还有其他方法,但大多数情况下它并不是真正需要的,甚至不太安全。另一种方法可能是使用authenticate header
或者将信息保留在查询字符串中。我认为两者都不太安全,但可以使用。
现在,如果目标是防止免费用户下载两个文件并需要等待第二个链接,您还可以通过将用户信息与某种哈希值组合来猜测是否是同一用户。 EG 用户代理、IP 地址、位置。这不会是 100% 准确,但可以让您了解无会话返回的免费用户。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)