我刚刚将开发站点移到了我的linux服务器上进行生产,但是这些会话似乎并没有持续很长时间。我猜它是服务器设置而不是php,因为它与plesk面板做同样的事情。每当执行脚本时,会话似乎都会被取消。我在错误日志中看不到任何内容,因此不确定它是什么。这一切都在wamp上工作得很好。无论如何,我上传了wamp服务器中的php.ini文件,因为它具有我需要的所有设置,并且都在使用localhost。不确定问题是什么,这是我在投入生产之前必须解决的最后一件事。而且只是添加会话正在开始,因为他们持续一点点只是不要长时间坚持。
以下是我的登录脚本的相关部分,以防代码出现问题:
// if login is ok then we add a cookie
if($flag == 0) {
$pass = htmlspecialchars(mysql_real_escape_string($_POST['pass']));
$username = htmlspecialchars(mysql_real_escape_string($_POST['username']));
$_SESSION['username']=$username;
$_SESSION['password']=$pass;
答案 0 :(得分:1)
在php.ini文件中为session.gc_maxlifetime设置更高的值。
你做了session_start();某处?
答案 1 :(得分:0)
请确保您使用session_start()启动会话(只是为了确定)
您应该查看设置(PHP.ini / phpinfo()):session.cookie_lifetime 它定义了cookie跟踪会话的生命周期
答案 2 :(得分:0)
确保已启用Cookie
如果您使用的是Firefox,请使用firebug / cookie monster检查您的Cookie。
确保在启动任何输出之前使用session_start()