Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/283.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
会话在仅Chrome的Bigcommerce PHP应用程序中不起作用_Php_Google Chrome_Session_Bigcommerce_Samesite - Fatal编程技术网

会话在仅Chrome的Bigcommerce PHP应用程序中不起作用

会话在仅Chrome的Bigcommerce PHP应用程序中不起作用,php,google-chrome,session,bigcommerce,samesite,Php,Google Chrome,Session,Bigcommerce,Samesite,我很担心,我刚刚发现我的PHP会话在Chrome中无法工作。实际上,我正在开发Bigcommerce应用程序,它使用Silex框架(SesionServiceProvider)在我的应用程序中存储会话。它在Firefox中运行良好,但在Chrome中则不行 当页面第一次加载时,它会显示会话值,但当我发送任何AJAX请求或使用POST请求或从主页发送数据的任何页面请求提交任何表单时,会话变量会被销毁,但当我重新启动会话时,它会给出会话已启动且没有会话变量的结果 此外,我读到了这篇文章 我有相同的问

我很担心,我刚刚发现我的PHP会话在Chrome中无法工作。实际上,我正在开发Bigcommerce应用程序,它使用Silex框架(SesionServiceProvider)在我的应用程序中存储会话。它在Firefox中运行良好,但在Chrome中则不行

当页面第一次加载时,它会显示会话值,但当我发送任何AJAX请求或使用POST请求或从主页发送数据的任何页面请求提交任何表单时,会话变量会被销毁,但当我重新启动会话时,它会给出会话已启动且没有会话变量的结果

此外,我读到了这篇文章 我有相同的问题需要为我的解决方案设置。但我找不到如何在我的应用程序会话中设置samesite属性

我使用以下代码设置我的应用程序会话

$app['session']->set('sessionname','sessionvalue');
我尝试了同一个网站

$app['session']->set('sessionname','sessionvalue',['samesite' => 'None', 'secure' => true]);

但不起作用。

我终于找到了解决方案,想在这里写下来,只是因为它可能会帮助别人

我在服务器上的.htaccess文件中添加了一个条件

<If "%{HTTP_USER_AGENT} !~ /(iPhone; CPU iPhone OS 1[0-2]|iPad; CPU OS 1[0-2]|iPod touch; CPU iPhone OS 1[0-2]|Macintosh; Intel Mac OS X.*Version\x2F1[0-2].*Safari|Macintosh;.*Mac OS X 10_14.* AppleWebKit.*Version\x2F1[0-3].*Safari)/i">Header always edit Set-Cookie (.*) "$1; SameSite=None; Secure"</If>
标题始终编辑集Cookie(.*)“$1;SameSite=None;安全”