Php 当用户再次访问同一页面时是否保持登录?
当前im正在使用会话登录用户。但是当我关闭浏览器并再次打开它时,我必须再次登录。你如何让用户登录,比如说2周Php 当用户再次访问同一页面时是否保持登录?,php,cookies,session,Php,Cookies,Session,当前im正在使用会话登录用户。但是当我关闭浏览器并再次打开它时,我必须再次登录。你如何让用户登录,比如说2周 那是通过饼干吗?是的。您可以使用cookies实现“自动登录”(或“记住我”)功能 这左右,应该为您指出一个正确的方向。是的,您应该使用cookies。以下是手动输入: 或者,您可以查看此函数:。它允许您修改会话cookie设置,如其生存期…请阅读以下内容: 您需要的设置是session.cookie\u life。关闭浏览器时,将删除会话cookie(例如没有生存期的cookie)。如
那是通过饼干吗?是的。您可以使用cookies实现“自动登录”(或“记住我”)功能
这左右,应该为您指出一个正确的方向。是的,您应该使用cookies。以下是手动输入: 或者,您可以查看此函数:。它允许您修改会话cookie设置,如其生存期…请阅读以下内容: 您需要的设置是
session.cookie\u life
。关闭浏览器时,将删除会话cookie(例如没有生存期的cookie)。如果希望会话保持更长时间的活动状态,请在php.ini
、httpd.conf
或.htaccess
中设置该设置。甚至可能使用ini\u集
编辑:实际上您可以使用此功能:
session_set_cookie_params (86400*30);
session_start()
86400*30是30天
请参见此处:您想要“在这台计算机上记住我”选项吗?以下是一种语言不可知的方法:
cookie\u id
和user\u id
列的DB表。如有必要,还可以添加cookie\u ttl
和ip\u锁
。我想这些列名说明了一切cookie\u id
,并将其与用户id
一起存储在数据库中。还将其存储为具有指定cookie名称之前的cookie的cookie值。例如,记住
。给饼干一个较长的生命周期,例如一年cookie\u id
,记住
。如果它在那里并且根据DB是有效的,那么自动登录与用户id
相关联的用户,并再次推迟cookie时间ip\u lock
的用途。它应该表示用户的IP地址。您最终可以添加一个额外的复选框“锁定登录到此IP(仅当您有静态IP时)”以便服务器可以使用用户的IP地址作为额外的验证
如果有人劫持了一个没有IP锁的用户的cookie值呢?嗯,没什么可以反对的。接受它。“记住我”这句话很有趣,因为在每个论坛下,帐户劫持不会造成多大伤害,但我肯定不会将其用于管理面板和控制服务器端内容的网页
这毕竟是相当直截了当的。祝你好运。回答这个问题的人也能思考一下这个话题的安全问题吗?例如,如何防止通过复制cookie自动登录。谢谢。那么至少要提到使用会话的固有安全风险;)您应该尽可能重用现有的身份验证框架,因为它确实很复杂。例如,看一看,我认为在数据库中存储users agent是个好主意,因为在IE和firefox中都要记住同一个用户是不合逻辑的。事实上,可以从请求中挖掘的所有内容都应该存储起来,以防止cookie被窃取,不是吗?。这是可行的,但如果用户升级UA就会失败。用户再次输入其详细信息比入侵者获得访问权要好得多。