PHP会话Cookie在页面刷新时重置

时间:2019-08-16 14:28:31

标签: php session cookies

我有一个工作网页,该网页具有基于PHP会话的登录功能。最近,我注意到在某些浏览器(Google Chrome桌面,Vivaldi)中,我无法登录。经过一番撬动之后,我注意到会话cookie在每次重定向/页面刷新时都会更改。在移动浏览器或Edge中都不会发生这种情况。匿名Chrome窗口也可以使用。

我尝试禁用所有扩展,但没有任何改变。不过,重要的是我的服务器(Apache)在http而不是https上运行。

我不太确定该向您展示什么。该代码已经一年没有更改,并且在一个月前就可以使用。更改的是服务器配置-即session.save_pathopen_basedir冲突。但这不应该只影响某些浏览器。我已经搜索了几个小时,不知道该怎么想。

编辑:非常有趣!我一直在使用信息图标检查cookie。当我在devtools中打开应用程序面板时,根本没有设置cookie。

会话配置:

Session Support enabled
Registered save handlers         files user
Registered serializer handlers   php_serialize php php_binary wddx
session.auto_start               Off
session.cache_expire             180
session.cache_limiter            nocache
session.cookie_domain            no value
session.cookie_httponly          no value
session.cookie_lifetime          0
session.cookie_path              /
session.cookie_secure            0
session.gc_divisor               1000
session.gc_maxlifetime           1440
session.gc_probability           1
session.lazy_write               On
session.name                     PHPSESSID
session.referer_check            no value
session.save_handler             files
session.save_path                E:\xampp\tmp
session.serialize_handler        php
session.sid_bits_per_character   5
session.sid_length               26
session.upload_progress.cleanup  On
session.upload_progress.enabled  On
session.upload_progress.freq     1%
session.upload_progress.min_freq    1
session.upload_progress.name     PHP_SESSION_UPLOAD_PROGRESS
session.upload_progress.prefix   upload_progress_
session.use_cookies              1
session.use_only_cookies         1
session.use_strict_mode          0
session.use_trans_sid            0

1 个答案:

答案 0 :(得分:0)

我认为“某些”浏览器会缓存内容并使旧的“会话”保持活动状态,而其他浏览器则不会,并且每次刷新后都请求/检查一个新的浏览器。我可能完全错了,但这是我的主意。