gpt4 book ai didi

php - 使用 __Secure-/__Host- 前缀重命名 PHP session cookie

转载 作者:行者123 更新时间:2023-12-03 23:22:20 25 4
gpt4 key购买 nike

我正在尝试从 PHPSESSID 重命名我的 PHP session cookie至 __Secure-PHPSESSID根据 https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Set-Cookie#Examples .

由于 PHP 不提供这种机制,我是通过 Apache 服务器配置来实现的:

RequestHeader edit Cookie ^__Secure-PHPSESSID(.*)$ PHPSESSID$1
Header edit Set-Cookie ^PHPSESSID(.*)$ __Secure-PHPSESSID$1
Header edit Set-Cookie ^(.*)(?<!SameSite=Strict)(?<!SameSite=Lax)$ "$1;SameSite=Lax"

这适用于 Firefox、Edge 和 Safari,但不适用于 Chrome。在 Chrome 上,我可以看到 cookie 设置了正确的名称和标志,但我无法登录到我的网站。

登录后,输出 var_dump($_SESSION['internal']['user_name'])NULL在 Chrome 上,但在 Firefox 和其他浏览器上显示正确的用户名。我还可以看到每次尝试登录时都会重新生成 session ID,并且该值设置在 __Secure-PHPSESSID 中。曲奇饼。

我尝试删除 SameSite标志(上面的第 3 行),它仍然不起作用。

有任何想法吗?

最佳答案

我不熟悉 Cookie Prefixes但 PHP 应该支持它 out of the box :

<?php

session_name('__Secure-PHPSESSID');
session_start();
Set-Cookie

关于php - 使用 __Secure-/__Host- 前缀重命名 PHP session cookie,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47891640/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com