确定会话是否在客户端启用

时间:2012-06-07 23:31:42

标签: php session status

如果客户端浏览器支持会话,我如何确定?

我正在开发一个反洪水脚本 - 我希望将每个操作的脚本操作限制为5秒,我想使用客户端会话存储unix时间,但首先我必须检查它们是否已启用。那可能吗?

2 个答案:

答案 0 :(得分:0)

您可以使用其他方法。在每个页面加载时,创建一个新的cookie(如果它尚不存在)。当您使用脚本时,您只需检查cookie是否存在,如果它存在且值正常,那么一切都很好。否则,您将禁止该脚本运行。

答案 1 :(得分:0)

我假设你试图限制脚本每个客户端每5秒运行一次以上。

Http是一种无状态协议,PHP依赖于cookie值(或参数值)来初始化服务器端的会话。知道这一点,单独使用会话不足以阻止用户每5秒钟多次充斥你的脚本。用户客户端可以简单地不在请求中发送cookie或会话ID参数,您必须将其视为新会话。

您必须使用其他方法来识别用户会话。使用请求的IP地址是一个良好的开端,但可能不适合您(特别是因为许多用户可以拥有相同的公共面向IP)。