Chrome开发工具设备模式和Cookies
问题描述:
使用Chrome的设备模式测试网站我遇到了一些cookies问题。Chrome开发工具设备模式和Cookies
我用流浪建设我的网站我的本地机器上的设置。该网站使用内容管理系统(Craft),并使网站处于离线模式,要求我登录到CMS控制面板以查看网站。如果我没有登录,即将到来的页面将显示。
的问题
一切工作正常测试的罚款。我登录到Craft控制面板,然后在localhost:1111的其他选项卡中拉起主页。
当我切换到device mode刷新页面时出现问题。我被带到'即将到来'的页面。如果我转到登录到Craft控制面板的选项卡,我会收到通知我已注销。
观看域的cookie我看到3个cookie在登录到控制面板时以及在查看网站的标签(处于正常观看模式而非设备模式)时包含一些会话数据。一旦我切换到设备模式(并刷新),其中一个cookie将被删除,这会导致“即将推出”页面。
的饼干也有类似的格式:
- HASHhashHASHhash
- HASHhashHASHhashusername
前者的这些令人耳目一新时被删除。
为什么在设备模式下刷新网站会导致其中一个cookie被删除?
答
我遇到了与设备模式相同的问题。
在/craft/config/general.php
中设置以下内容为我解决了这个问题。
'requireMatchingUserAgentForSession' => false
有点难以知道肯定没有看到自己在做什么工艺进行会话管理。它*可能*是因为他们正在检查UA,以便在伪造请求时更加安全。因此,刷新可能会导致Craft查看另一种设备类型的模拟UA,这将使它们在下一个请求中使Cookie无效。通常在我工作过的任何系统中,这种事情不是问题。所以我认为它更具体到Craft在直接DevTools问题上的安全性。 – Garbee
好点。我确实尝试打开一个标签,切换到设备模式,登录到控制面板,然后打开设备模式下的另一个标签访问该网站。如果我没有记错的话,这似乎工作。烦人但可以理解。 –