1

是一种阻止多次登录网站到 1 个连接/IP 的方法吗?

假设我的网站是http://website.com,我只希望 1 个用户从 1 个 IP 浏览!

这可能使用 php、javascript 或 htaccess 吗?

我对 htaccess 做了很多测试,但都失败了

提前致谢

4

2 回答 2

3

是的,但你不应该!

假设您只想阻止一个 IP 地址上的多个用户登录到典型的身份验证系统,只需在您的users数据库表中添加两行:last_iplast_seen.

last_ip如果用户的 IP 地址已更改,则在每次页面加载时更新。 last_seen在每次页面加载时更新。

当用户提交登录请求时,检查另一个用户last_ip的 IP 地址是否等于用户的 IP 地址并且last_seen在正常的时间段内(比如 30 分钟)。如果是,则拒绝登录请求。

这是一个坏主意,因为它很容易避免

使用 VPN、TOR 或开放代理,用户可以很容易地在不同的浏览器甚至同一浏览器的不同选项卡中操作多个 IP 地址。

此外,期待 IPv6,每个用户可能会拥有 64-256 个标准 IP 地址。

这也是一个坏主意,因为它会伤害合法用户

贫穷国家的用户、住在同一家的多人、大学或工作场所的人很可能共享 IP。用户不能很好地映射到 IP 地址。

于 2013-08-22T22:57:29.520 回答
1

是的,这是可能的,但有点奇怪:) 每当会话关闭/过期时,您都可以将会话(也保存 IP 地址)保存到数据库 - 将其删除。

如果您使用 Codeigniter,请阅读内容。
否则,这是一个很好的“演练”。

于 2013-08-22T22:54:38.427 回答