• cookie 老丢失


    IE无法获得cookie、ie不支持cookie的解决办法 (转载)
    2010年10月30日 星期六 15:15

    --------------------------------------------------------------------------------

    昨天进网站系统的时候,发现用自己的电脑 IE7.0总是无法正常登录,别的电脑都可以。

    每次登录后又被重定向回了登录页面。

    可换成Firefox和google chrome 却一切OK,后来还把浏览器升级到IE8.0 问题依就。不由得

    想起,自己以前有

    次也遇到过就种情况,后来实在没时间找原因,直接把系统还原了。还原后就对了。 这次又

    遇到,郁闷了。
    初步推断应该是Cookie的问题。 在网上查了些资料,把所有现有Cookie删除,又将“隐私”

    选项设为“接受所

    有Cookie”后再试。问依旧。
    没办法,只能抓包了。 谁知一看就发现问题了:
    expires=Tue,1-Jul-2009 14:23:00 GMT; path=/
    Cookie的过期时间好像不对,今天明明是7月8号…… 哦,终于想起了,昨天晚上我好像为了做什么,把我的机器的日期改了下,后来就忘了。

    但是为什么用Firefox没有问题呢?
    搜索了下,看到了一篇IE 与FireFox 对Cookie时间的不同理解这篇文章后恍然大悟:

    对于IE而言,Cookie的有效时间段是理解为客户端的时间与服务器端时间的间隔,即如

    果Cookie的时间设置为time()+300,那么在 IE里,Cookie有效的条件是:客户端时间(验

    证Cookie时间)-服务器端时间(定义Cookie的时间)<300(秒);所以这种 情况下,当我

    们网站上的验证码脚本被执行时,Cookie就已经过期了,所以验证码失效。
    而对于FireFox而言,Cookie的有效时间完全由服务器端的时间决定,以上面的假设为例,即

    Cookie有效的条件是:服务器端时间T2 (验证Cookie时间)-服务器端时间T1(定

    义Cookie的时间)<300(秒)。所以在FireFox里,当打开系统登录页时,我输入用户 名、密

    码及验证码的时间肯定不会超过300秒,自然就可以正常登录。Firefox的cookie不依赖于服

    务器的时间,可见,FireFox是充分考虑到了服务器端与客户端的时差问题。

    经过就件事,不由于联想到最近公司刚上的服务器,程序也遇到此种情况,ie有问

    题,Firefox没问题,而且在服务器上运行网站也没问题,后来忙,不想重装IIS,都是自己把程

    序改了些。勉强可以用。莫非也是服务器的时间不对,马上远程连接上服务器,一看服务器的

    日期:7月6日,今天明明是7月8日,原来如此,终于把这个烦人的问题的原因找到了。

  • 相关阅读:
    Linux中使用 FTP 命令时出现 “-bash: ftp: command not found”
    Jenkins Build step 'Execute shell' marked build as failure
    centos7ping www.baidu.com没有ping通
    linux maven 安装
    位运算初步
    C++ STL:next_permutation和prev_permutation
    逆波兰表达式
    STL与基本数据结构
    学习记录:指针(未整理)
    Codeforces Round #615 (Div. 3) 补题记录
  • 原文地址:https://www.cnblogs.com/laogao/p/2427333.html
Copyright © 2020-2023  润新知