搜索
首页后端开发php教程一个判断PHP程序是否被同时在不同浏览器上执行的问题

问题是这样的,我有一个程序(假设单个页面),这个程序被运行的时候,我不想让多个浏览器能同时运行,因为SESSION,COOKIE这样的会因为浏览器内核不同而导致验证不一样,就会出现可能同一时间,开3个不同内核的浏览器就能同时模拟3个用户运行该程序。

如何验证才能保证在同一时间,一台电脑一个用户只能运行一个该程序,而不会受到浏览器的影响。

就比如网页游戏的登录,同一浏览器不能同时登录多个账号,但是开3个不同浏览器就能同时登录3个账号。

如何验证才能防止这种“多开”的情况?


回复讨论(解决方案)

这个可以写进内存或数据库判断用户是否已经登录,然后每次登录前再去判断登录状态,这样不就解决了躲开的情况吗?不知鄙人说的是否这个意思

可以写入数据库进行判断。

mac+ ip 验证怎么样?

这个可以写进内存或数据库判断用户是否已经登录,然后每次登录前再去判断登录状态,这样不就解决了躲开的情况吗?不知鄙人说的是否这个意思

这个确实可以防止同一用户的“多开”情况,但是我想要的是只能有一个用户登录,也就是,即便是3个不同的用户名也不行

mac+ ip 验证怎么样?

这个也许可行,不过实际中有这样的项目吗?

http://www.baidu.com/baidu?word=js%E8%8E%B7%E5%8F%96mac%E5%9C%B0%E5%9D%80&ie=utf-8

http://www.baidu.com/baidu?word=js%E8%8E%B7%E5%8F%96mac%E5%9C%B0%E5%9D%80&ie=utf-8

惭愧,谢谢版主老大

有帐号就好办了,后一个登录杀掉前一个,记录最新一个session id就行

有帐号就好办了,后一个登录杀掉前一个,记录最新一个session id就行

那我怎么知道哪个账号对应着哪一个账号呢,我只是防止一个用户多个账号同时登录,而不是这个程序只能一个用户而且一个账号登录

http://www.baidu.com/baidu?word=js%E8%8E%B7%E5%8F%96mac%E5%9C%B0%E5%9D%80&ie=utf-8
版主老大,貌似这个需要用户点击信任允许才行啊,有没有直接可以做到的

获取用户信息,当然是要用户允许的。不然你也打算制造仪的“棱镜”事件?


有帐号就好办了,后一个登录杀掉前一个,记录最新一个session id就行

那我怎么知道哪个账号对应着哪一个账号呢,我只是防止一个用户多个账号同时登录,而不是这个程序只能一个用户而且一个账号登录

很晕,怎么会不知道呢?登录时不判断不记录帐号的么?难道就一个True/False?

我得提醒一下: mac地址是可以伪造的...



有帐号就好办了,后一个登录杀掉前一个,记录最新一个session id就行

那我怎么知道哪个账号对应着哪一个账号呢,我只是防止一个用户多个账号同时登录,而不是这个程序只能一个用户而且一个账号登录

很晕,怎么会不知道呢?登录时不判断不记录帐号的么?难道就一个True/False?

我的目的是想防止“一个用户多开”的情况,所以我要确定的是,这个用户只能同时使用一个账号,如果他注册了三个账号,用三个不同浏览器登陆,那么服务器针对每个账号来看确实没问题,但是这三个账号都是同一个用户同一时间登陆的,我现在要确定这个用户只能使用其中一个

获取用户信息,当然是要用户允许的。不然你也打算制造仪的“棱镜”事件?

那有没有能用户本身就提供,又可以确定唯一性的信息呢

我得提醒一下: mac地址是可以伪造的...

妞妞,那有没有什么办法能确定到唯一用户呢

你账号哪里做一个验证就行了,SESSION是每访问一次有一个唯一ID的,换浏览器就肯定换新的了

你账号哪里做一个验证就行了,SESSION是每访问一次有一个唯一ID的,换浏览器就肯定换新的了

我现在是要想办法确定用户唯一,不是账号唯一,换了新SESSION那我还怎么确定他之前是不是登录过了


我得提醒一下: mac地址是可以伪造的...

妞妞,那有没有什么办法能确定到唯一用户呢

除非你抛弃所有的浏览器做为客户端,自己开发一个专门的客户端用来访问,否则是没有办法的。

声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
如何防止会话固定攻击?如何防止会话固定攻击?Apr 28, 2025 am 12:25 AM

防止会话固定攻击的有效方法包括:1.在用户登录后重新生成会话ID;2.使用安全的会话ID生成算法;3.实施会话超时机制;4.使用HTTPS加密会话数据,这些措施能确保应用在面对会话固定攻击时坚不可摧。

您如何实施无会话身份验证?您如何实施无会话身份验证?Apr 28, 2025 am 12:24 AM

实现无会话身份验证可以通过使用JSONWebTokens(JWT)来实现,这是一种基于令牌的认证系统,所有的必要信息都存储在令牌中,无需服务器端会话存储。1)使用JWT生成和验证令牌,2)确保使用HTTPS防止令牌被截获,3)在客户端安全存储令牌,4)在服务器端验证令牌以防篡改,5)实现令牌撤销机制,如使用短期访问令牌和长期刷新令牌。

PHP会议有哪些常见的安全风险?PHP会议有哪些常见的安全风险?Apr 28, 2025 am 12:24 AM

PHP会话的安全风险主要包括会话劫持、会话固定、会话预测和会话中毒。1.会话劫持可以通过使用HTTPS和保护cookie来防范。2.会话固定可以通过在用户登录前重新生成会话ID来避免。3.会话预测需要确保会话ID的随机性和不可预测性。4.会话中毒可以通过对会话数据进行验证和过滤来预防。

您如何销毁PHP会议?您如何销毁PHP会议?Apr 28, 2025 am 12:16 AM

销毁PHP会话需要先启动会话,然后清除数据并销毁会话文件。1.使用session_start()启动会话。2.用session_unset()清除会话数据。3.最后用session_destroy()销毁会话文件,确保数据安全和资源释放。

如何更改PHP中的默认会话保存路径?如何更改PHP中的默认会话保存路径?Apr 28, 2025 am 12:12 AM

如何改变PHP的默认会话保存路径?可以通过以下步骤实现:在PHP脚本中使用session_save_path('/var/www/sessions');session_start();设置会话保存路径。在php.ini文件中设置session.save_path="/var/www/sessions"来全局改变会话保存路径。使用Memcached或Redis存储会话数据,如ini_set('session.save_handler','memcached');ini_set(

您如何修改PHP会话中存储的数据?您如何修改PHP会话中存储的数据?Apr 27, 2025 am 12:23 AM

tomodifyDataNaphPsession,startTheSessionWithSession_start(),然后使用$ _sessionToset,修改,orremovevariables.1)startThesession.2)setthesession.2)使用$ _session.3)setormodifysessessvariables.3)emovervariableswithunset()

举一个在PHP会话中存储数组的示例。举一个在PHP会话中存储数组的示例。Apr 27, 2025 am 12:20 AM

在PHP会话中可以存储数组。1.启动会话,使用session_start()。2.创建数组并存储在$_SESSION中。3.通过$_SESSION检索数组。4.优化会话数据以提升性能。

垃圾收集如何用于PHP会议?垃圾收集如何用于PHP会议?Apr 27, 2025 am 12:19 AM

PHP会话垃圾回收通过概率机制触发,清理过期会话数据。1)配置文件中设置触发概率和会话生命周期;2)可使用cron任务优化高负载应用;3)需平衡垃圾回收频率与性能,避免数据丢失。

See all articles

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

Video Face Swap

Video Face Swap

使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

mPDF

mPDF

mPDF是一个PHP库,可以从UTF-8编码的HTML生成PDF文件。原作者Ian Back编写mPDF以从他的网站上“即时”输出PDF文件,并处理不同的语言。与原始脚本如HTML2FPDF相比,它的速度较慢,并且在使用Unicode字体时生成的文件较大,但支持CSS样式等,并进行了大量增强。支持几乎所有语言,包括RTL(阿拉伯语和希伯来语)和CJK(中日韩)。支持嵌套的块级元素(如P、DIV),

DVWA

DVWA

Damn Vulnerable Web App (DVWA) 是一个PHP/MySQL的Web应用程序,非常容易受到攻击。它的主要目标是成为安全专业人员在合法环境中测试自己的技能和工具的辅助工具,帮助Web开发人员更好地理解保护Web应用程序的过程,并帮助教师/学生在课堂环境中教授/学习Web应用程序安全。DVWA的目标是通过简单直接的界面练习一些最常见的Web漏洞,难度各不相同。请注意,该软件中

适用于 Eclipse 的 SAP NetWeaver 服务器适配器

适用于 Eclipse 的 SAP NetWeaver 服务器适配器

将Eclipse与SAP NetWeaver应用服务器集成。

VSCode Windows 64位 下载

VSCode Windows 64位 下载

微软推出的免费、功能强大的一款IDE编辑器