【发布时间】:2012-12-15 07:15:08
【问题描述】:
我有一个问题,当一个人登录时,他应该被限制为只能使用一个 IP 地址。他应该不能同时通过不同的机器登录,所以有什么方法可以在不使用会话 cookie 和在 URL 中不使用会话 ID 的情况下保持会话?
【问题讨论】:
-
你试过使用localstorage还是sessionstorage?
我有一个问题,当一个人登录时,他应该被限制为只能使用一个 IP 地址。他应该不能同时通过不同的机器登录,所以有什么方法可以在不使用会话 cookie 和在 URL 中不使用会话 ID 的情况下保持会话?
【问题讨论】:
是的,通过在数据库中写入会话。除了您编写的常规会话数据(id 和用户数据)和 user_ip。因此,当会话处于活动状态时,您可以限制来自另一个 ip/机器甚至浏览器的用户访问(如果您将会话唯一性设置为 IP 和浏览器标头 - 用户 agnet)
请查看下面的链接,了解如何扩展会话处理程序和保存/读取数据库(因此不使用 cookie)
set session in database in php
还有这个
【讨论】:
您可以创建一个数据库表,在用户登录时使用会话 ID 进行更新,并在用户注销时将其删除。登录时,您可以检查数据库以确保数据库中没有活动会话。
【讨论】: