ste*_*boy 6 php safari session
我创建了一个会话,当从Safari上的ajax调用调用时,该会话为null.
header.php
session_start();
$_SESSION['test'] = 'this is my session';
mypage.php
session_start();
echo $_SESSION['test']; <-- NOT WORKING ON SAFARI
Run Code Online (Sandbox Code Playgroud)
谢谢
我遇到了同样的问题,session_id()每次刷新都会改变,所以safari没有将会话id存储在cookie中。通过手动添加:
setcookie('PHPSESSID', session_id(), 0, '/');
我成功了。
它可以在其他浏览器中使用吗?它可以在没有 AJAX 的 Safari 中工作吗?该脚本是否从原始页面所在的同一域加载?
Safari 显然比其他浏览器有更保守的 cookie 政策。如果 PHP 端的一切都正常,并且其他浏览器也正常,我会认为 Safari 不会将会话 cookie 发送回服务器。