Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/apache/9.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
Php 会话变量在每次重新加载页面时销毁_Php_Apache_Session - Fatal编程技术网

Php 会话变量在每次重新加载页面时销毁

Php 会话变量在每次重新加载页面时销毁,php,apache,session,Php,Apache,Session,重新加载页面后,$\u会话变为空! 在服务器维护之前工作正常 为了进行测试,我只有一个index.php文件,其中包含以下行 session_start(); var_dump($_SESSION); $_SESSION['test'] = 'works'; echo $_SESSION['test']; //displays the 'works' fine 但一旦我重新加载页面,“test”就变得未定义,$\u会话变量为空 echo session_id(); // changes eve

重新加载页面后,$\u会话变为空! 在服务器维护之前工作正常

为了进行测试,我只有一个index.php文件,其中包含以下行

session_start();
var_dump($_SESSION);
$_SESSION['test'] = 'works';
echo $_SESSION['test']; //displays the 'works' fine
但一旦我重新加载页面,“test”就变得未定义,$\u会话变量为空

echo session_id(); // changes every time
有人知道到哪里去找问题吗? 这是apache关于写入权限的错误配置还是Cookie的问题?
我很高兴听到任何想法

检查是否有权限写入会话文件。
如果存在任何错误,请查看错误日志

默认情况下,为当前会话设置PHP会话cookie。刷新时,您会得到一个新的sessionID,因为它是一个新的cookie

尝试使用下面的代码延长会话cookie的生存期,并将其重命名为“mydomain”:-(假设您正在使用会话cookie:请参阅有关此的PHP文档。如果您正在使用其他内容来管理会话,请检查此处)


检查错误日志,检查会话id为的cookie设置的参数,检查会话id是否保持不变或更改,…每次重新加载页面时会话id都会更改。问题可能出在哪里?前两个想法--检查浏览器的cookie存储以确保它实际存储了会话cookie,并检查会话存储目录以确保web服务器进程的所有者可以写入它。您能帮我怎么做吗?我检查了firefox管理cookie菜单,它说页面上有13个cookie,仅此而已。错误日志为空。如何检查会话文件权限?我有一个问题,请不要发表评论作为答案。答案是解决方案,而不是问题。如果您还没有足够的rep进行评论,请处理该问题,而不是以这种方式绕过rep限制。@Ninet9它应该作为error.log和access.log位于apache日志目录中default@MagnusEriksson事实上,Jumper得到了回答,并没有询问。你在他的回答中看到问号了吗?谢谢你的建议。
    session_set_cookie_params((60*60*24*31), '/', '.mydomain.com'); //setting for 31 days 
    session_start();