【发布时间】:2012-01-19 00:44:18
【问题描述】:
我有一个 PHP 文件,我想收集人们的 IP,然后如果他们的 IP 在过去 24 小时内运行该文件,则阻止 PHP 文件继续运行。我尝试过使用 cookie,但它一直给我“无法更改标题”错误。另外,人们可以清除他们的 cookie。基本上,它会保留运行 php 文件的每个人的 IP,然后如果他们尝试在 24 小时内访问它,它会“回显“您可以在 24 小时内再次访问它”并且不会运行整个文件。然后他们可以24 小时后再做一次。
【问题讨论】:
-
这会给路由器或 NAT 后面的用户带来问题。基本上,学校或公司网络中的任何人都会受到这种策略的阻碍,因为在您看来,所有这些都来自同一个公共 IP 地址。
-
您需要将此信息保存在服务器上的某个位置,例如数据库。
-
IP 限制并不比 cookie 更安全,因为人们可以通过代理进行连接
-
另一种方法是禁止任何没有 cookie 的用户访问您的服务器(24 小时)。请注意,cookie 参数中的缺陷是用户可以打开另一个浏览器来绕过该保护。为什么不让人们登录以便知道他们是谁?