gpt4 book ai didi

php - 如何告诉PHP对跨站点Cookie使用SameSite = None?

转载 作者:行者123 更新时间:2023-12-02 11:27:17 26 4
gpt4 key购买 nike

根据此处的https://php.watch/articles/PHP-Samesite-cookieshttps://www.php.net/manual/en/session.security.ini.php上的PHP文档,根据PHP 7.3中的新增功能,只有2种可能的配置选项:

  • session.cookie_samesite =松弛
  • session.cookie_samesite =严格的

  • 但是,根据Chrome控制台,需要将其设置为“无”:

    A cookie associated with a cross-site resource at URL was set without the SameSite attribute. It has been blocked, as Chrome now only delivers cookies with cross-site requests if they are set with SameSite=None and Secure. You can review cookies in developer tools under Application>Storage>Cookies and see more details at URL and URL.



    因此,我无法再设置跨站点Cookie。解决方法是什么?

    最佳答案

    您可以使用 ini_set 将值设置为“None”。使用该函数时,不检查是否支持该值:

    ini_set('session.cookie_samesite', 'None');
    session_start();
    session_set_cookie_params 也可以设置它:
    session_set_cookie_params(['samesite' => 'None']);
    session_start();
    php.ini中受支持的错误报告是 here

    正如 @shrimpwagoncomment below中所说, session.cookie_secure必须是 true才能起作用。 PHP不需要它,但是浏览器需要。

    关于php - 如何告诉PHP对跨站点Cookie使用SameSite = None?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59534999/

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