参见英文答案 >
How to fix “Headers already sent” error in PHP 11个
我遇到了session_start()的问题.它每次刷新/加载页面时都会创建一个新会话.
这是代码:
$bob = session_id();
echo "Session ID on load is ".$bob;
echo "
";
if($bob==""){
session_start();
$bob = session_id();
echo ' session ID currently is '.$bob;
}
// a bunch more stuff
当我加载页面时,我得到以下内容:
加载时的会话ID是
会话ID目前为ed320bc5e24c871c9db8ea30e6796c14(或变体)
如果我刷新页面,我得到:
加载时的会话ID是
会话ID目前为fbd69d01d511a7be382799dca7279a86(或变体)
在调用session_start()之前,会话ID始终为空,并且它始终是新的session_id()
它在所有浏览器中执行此操作,我已检查以确保cookie已打开.
会话保存路径为/ tmp.我不确定它到底在哪里,但通过我的根目录和所有其他目录,我找不到会话文件(假设它看起来像sess_fbd69d01d511a7be382799dca7279a86).
因此我认为保存路径正在发生一些事情,但我现在太新了,无法确切知道,服务器管理员是相当无益的.我的下一步诊断问题应该是什么?服务器正在运行5.3.22.
phpinfo是here
谢谢你的帮助.
ps如果您愿意,可以访问pcm.pcmxa.com查看问题.