Php:为Cookie属性SameSite = None设置标头; Secure根本不起作用

时间:2020-02-04 11:49:43

标签: php codeigniter cookies header samesite

我知道针对同一问题提供了许多解决方案,但我尝试了所有解决方案,但都没有解决任何问题。

我尝试按照以下方式进行操作,但没有一种有效。我的php版本是7.1和我正在使用的Codeigniter框架。

通过在index.php中设置标题

header('Set-Cookie: HttpOnly; SameSite=None;Secure');

通过.htaccess中的设置

Header edit Set-Cookie ^(.*)$ "$1;HttpOnly;Secure;SameSite=none"

通过apache2 httpd.conf中的设置

Header edit Set-Cookie ^(.*)$ "$1;HttpOnly;Secure;SameSite=None"

我已经审查了Chrmoe git更新,它说 header('Set-Cookie: cross-site-cookie=bar; SameSite=None; Secure');

我没有选择cross-site-cookie=bar。会有什么价值。

我也尝试过相同的方法,但是根本没有用。

2 个答案:

答案 0 :(得分:1)

您好,我已通过以下方法解决了此问题。希望对别人有帮助

在httpd.conf中(对于bitnami服务器文件将为/ opt / bitnami / apache2 / conf)

Header always edit Set-Cookie ^(.*)$ $1;Secure;SameSite=None

答案 1 :(得分:0)

这也可能对仍在苦苦挣扎并使用 PHP >= 7.3.x 和 CI 3.1.11 的人有所帮助

在根目录下找到的index.php中,添加如下代码

if(isset($_COOKIE["PHPSESSID"])){
    header('Set-Cookie: PHPSESSID='.$_COOKIE["PHPSESSID"].'; SameSite=None');
}

它对我有用,在尝试了所有之后(徒劳)