首页 > 解决方案 > Symfony 4:如何排除故障/解释如果从外部链接访问站点,用户被强制登录

问题描述

我有一个 Symfony 4 站点,我的用户可以登录。过去,当他们单击来自不同域的链接时,它也很有效,他们不必登录,他们的会话将继续,因为他们已经登录了。

我最近升级到 Symfony 4.4.18,现在当用户尝试通过链接从不同域访问该站点时,它不会识别它们并强制他们再次登录。但是,如果他们将链接直接复制并粘贴到地址栏中,则无需登录。

我无法弄清楚是什么可能导致外部链接强制用户进入登录页面,但是当用户手动键入与链接相同的地址时,他们使用现有会话。

我不确定要提供什么代码来帮助解决问题,主要是觉得我缺少一些简单的东西。如果我需要提供更多信息,请发表评论

标签: phpsymfony

解决方案


最后,这与 cookie 的 SameSite 属性有关。Symfony 将默认设置更改为严格,这导致每次我从外部页面访问时会话都会重新开始。我在 Security.yaml 和 Framerwork.yaml 中将其更改为“lax”,然后我的网站开始像以前一样工作。


推荐阅读