关于http协议session和cookie的理解
http是无状态协议,不能够记录访问者的身份,
为了解决这一问题服务器端设置了session 浏览器端设置了cookie 这种机制
当浏览器第一次访问服务器的时候,服务器会判断是否有cookie的存在,若存在会读取cookie中的 PHPSESSID 来读取用户的一些状态,
cookie的内容可以分别设置不同的生命周期,
如果只设置了用户的账号,密码,关闭浏览器再访问服务器的时候,服务器能得到用户的账号和密码,但是不能得到sessionID 会重新创建session
所以用户实际是在服务器上又一次的登录,用户可以无感知,
当设置了PHPSESSID 的生命周期,用户再访问服务器时可以通过PHPSESSID直接找到上次登录的session内容,不用登录,
服务器端的session不会主动删除,所以要设置session过期时间,不然session会一直存在消耗服务器资源
登录窗口的记住密码和自动登录功能可以采用cookie来实现
记住密码 把 账号和密码存入cookie 下次访问的时候,判断是否有cookie的存在,有就把,账号密码写入HTML的表单内 或者使用js来实现这功能
自动登录 cookie中存入账号和密码的同时在存入一个自动登录的识别,当用户下次访问的时候,自动判断这个字段是否存在,若存在使用cookie中的账号和密码,自动登录,实现自动登录