Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/268.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
POST请求出错后PHP会话死亡_Php_Session_Cookies - Fatal编程技术网

POST请求出错后PHP会话死亡

POST请求出错后PHP会话死亡,php,session,cookies,Php,Session,Cookies,我遇到了一个问题,php会话在POST请求后被删除。 如果我使用方法POST提交表单,如果在表单重定向的页面上出现错误,并点击F5重新加载页面,会话将被删除 好的,下面是我为重现我的问题所做的: 我创建了一个空白的php项目(服务器详细信息如下): 4页。每一页都以session_start()开头 第1页:将某些值存储到会话中: <?php session_start(); $_SESSION['foo'] = 'bar'; 因此,事实证明,这与cookie的“samesite”配置有

我遇到了一个问题,php会话在POST请求后被删除。 如果我使用方法POST提交表单,如果在表单重定向的页面上出现错误,并点击F5重新加载页面,会话将被删除

好的,下面是我为重现我的问题所做的:

我创建了一个空白的php项目(服务器详细信息如下):

4页。每一页都以session_start()开头

第1页:将某些值存储到会话中:

<?php
session_start();
$_SESSION['foo'] = 'bar';

因此,事实证明,这与cookie的“samesite”配置有关。从现在起,默认情况下它被设置为“lax”,而不是“none”,如果您在非200响应后刷新页面,它将不会发送带有POST请求的cookie


不是100%了解细节,但事实证明这与samesite=lax配置有关。

因此,事实证明,这与cookie的“samesite”配置有关。从现在起,默认情况下它被设置为“lax”,而不是“none”,如果您在非200响应后刷新页面,它将不会发送带有POST请求的cookie


不是100%了解细节,但事实证明这与samesite=lax配置有关。

听起来一切都应该正常。您是否尝试过检查错误日志?可能是配置问题或冲突。听起来一切正常。您是否尝试过检查错误日志?可能是配置问题或冲突。
<?php
session_start();
echo $_SESSION['foo'];
<?php
session_start();
echo '<form method="post" action="page4.php">';
echo '<input type="text" name="whatevs">';
echo '<input type="submit">';
echo '</form>';
<?php
session_start();
header('HTTP/1.1 500 Internal Server Error');
exit;