[英]How to deny multiple connections (or multiple instances of) a particular webpage to the same IP address client?
考虑一个网页说, http://www.somedomain.tld/page1.php我不希望有人打开page1.php的多个实例。 如果用户打开,则多个浏览器中的同一页面将与警告消息断开连接。
有什么建议如何处理这个? 可能的cookie检查,简单的.htaccess实现,IP检查?
如果您需要有关该方案的进一步说明,请与我们联系。
链接: 限制用户从同一IP进行多页访问
编辑:接受“ deceze ”的方向。
@Mods:你可以关闭这个问题。
所以,这里有两个工具是IP和cookie。
IP不是用户唯一的。 忘了他们。 IP是用于路由数据的传递机制,它们太粗糙而无法识别用户。
Cookie不会在浏览器之间共享,因此您无法使用跨浏览器的Cookie识别用户。
此外,网络是无国籍的。 当网站打开时,浏览器和服务器之间没有一个持久连接。 加载页面后,它在浏览器中保持打开状态,但它与服务器之间没有通信。
鉴于这些情况,您几乎不可能按照要求使用IP或cookie。 至少没有一些副作用,其范围可以是用户从他自己的帐户中登出自己或者共享相同IP的人彼此死锁。
你应该做的是以一种包含HTTP请求的无状态特性的方式编写你的应用程序。 您可以通过为用户提供唯一的Cookie来识别用户。 相反,没有cookie的用户是新用户(包括不同的浏览器); 使用此信息对您有利。 如果您需要在完成其他任务之前完成某个过程,则需要将此状态保持在服务器端并将其绑定到特定用户。 即“具有cookie XYZ的用户需要接下来执行动作C” ,然后当用户向您的服务器发出HTTP请求时,让服务器评估该请求并确定它是否适合用户应该做的任何事情; 通过重定向或拒绝请求来做出适当的响应。
如果有登录,那么我的解决方案可能适合你..
如果是在多个浏览器中,这意味着在第二个浏览器中用户必须再次登录..
所以你在你的数据库中做了一个注释,其中存储了用户信息/登录信息,一旦登录你将无法再次登录...
可能无法在不同选项卡中阻止来自同一浏览器的用户
谢谢
存储IP地址,每次使用此值和请求的URL检查,您可以决定哪个可以看到您的网页(也可以看到多少次)。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.