Php 未在Safari 13中为基本域设置Laravel 6会话cookie
在Laravel框架中,在根域级别设置会话cookie在safari 13.0.3中不起作用,但在safari 12、Chrome和Firefox中起作用 由于未设置Cookie,因此每次页面刷新都会创建一个新会话,并且登录不起作用 除了app/session.php中的会话行为之外,我使用的是默认的laravel设置,在这里我将会话域更改为根域('.example.test'),并将会话驱动程序设置为“数据库”(遵循来自的建议) 在safari 13中,当域设置为完整url(subdomain.example.com),但当更改为根url(.example.com)时,会设置cookies 在Safari调试工具中,我可以看到请求头被设置和执行,但cookie从未进入存储 网络请求头/cookie: 我尝试过的事情:Php 未在Safari 13中为基本域设置Laravel 6会话cookie,php,laravel,session,cookies,safari,Php,Laravel,Session,Cookies,Safari,在Laravel框架中,在根域级别设置会话cookie在safari 13.0.3中不起作用,但在safari 12、Chrome和Firefox中起作用 由于未设置Cookie,因此每次页面刷新都会创建一个新会话,并且登录不起作用 除了app/session.php中的会话行为之外,我使用的是默认的laravel设置,在这里我将会话域更改为根域('.example.test'),并将会话驱动程序设置为“数据库”(遵循来自的建议) 在safari 13中,当域设置为完整url(subdomain
- 尝试使用和不使用驱动程序作为数据库
- 在session.php中更改会话cookie名称、samesite行为和安全行为
- 在会话结束域中添加斜杠,并删除第一个斜杠
- 隐姓埋名/私人浏览模式(不会改变行为,在chrome中仍然有效,但在safari中不起作用)
- 隔离问题并升级到最新的laravel版本(最初在5.6上注意到,在最新的6.6版本中仍在发生)
- 关闭cookie加密
SESSION\u DOMAIN
设置为根域示例。测试,不带尾随
请注意,没有结尾的
的域在旧版本中无效,一些非常旧的浏览器可能不接受cookie。Safari 12和其他流行浏览器将接受cookie,因为:
如果显式指定的值不是以点开头,则用户代理将提供前导点
谢谢你的回复,我尝试了一下,没有领先/落后。不幸的是,它仍然不接受它。我能够在safari 13.0.3(macOS High Sierra)上进行测试,。例如。测试
工作得非常好。客户端出现问题,禁用所有扩展,注销服务工作者(如果有),清除所有应用缓存。。。根据您发布的网络请求图像,浏览器应发送收到的cookie。非常感谢您抽出时间!知道这很可能在我这边是非常有帮助的。我相信这个被认可的答案并不能解决这个问题。我想我已经发现了一个更普遍的问题,即非tld、测试域、Safari 13和(可能)证书的子域之间没有共享Cookie。请看这里: