根据此处的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控制台,需要将其设置为“无”:



    因此,我无法再设置跨站点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不需要它,但是浏览器需要。

    10-07 19:33
    查看更多