我刚刚将dev站点转移到我的linux服务器上进行生产,但是会话似乎并没有持续很长时间。我猜是服务器设置,而不是php,因为它和plesk面板做了同样的事情。无论何时执行脚本,会话似乎都是未设置的。我在错误日志中看不到任何东西,所以不确定它是什么。这一切都在wamp上运行得很好。无论如何,我上传了wamp服务器中的php.ini文件,因为它有我需要的所有设置,并且所有设置都在本地主机上工作。不确定问题是什么,这是我在投入生产之前必须解决的最后一件事。还要补充的是,会话正在开始,因为它们只持续了一小段时间,只是不要逗留太久。
以下是我的登录脚本的相关部分,以防代码出现问题:
// 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;发布于 2012-06-23 06:17:38
请确保使用session_start()启动会话(只是为了确保)
您应该查看设置(PHP.ini/phpinfo()):session.cookie_lifetime它定义用于跟踪会话的cookie的生存期
发布于 2012-06-23 06:14:45
在php.ini文件中为session.gc_maxlifetime设置更高的值。
你在什么地方做了session_start();吗?
发布于 2012-06-23 11:11:40
确保cookies已启用
如果你使用Firefox,用firebug/cookie monster检查你的cookie。
确保在启动任何输出之前使用的是session_start()
https://stackoverflow.com/questions/11164798
复制相似问题