我尝试了多种方式来扩展它,以便不必在开发服务器上每1440秒登录一次。但问题仍然存在。
有人可以就“正确”的方法提出建议吗?我想将cookie会话超时设置为3600(1小时)而不是默认的1440。
我试过了:
我确保每次尝试重新启动apache以加载新配置。但问题仍然存在。
非常感谢任何帮助/建议。
答案 0 :(得分:2)
你必须编辑phpmyadmin的配置文件(config.inc.php)并设置变量$cfg['LoginCookieValidity'] = 3600
,我把它放在文件的末尾。
接下来,如果它低于3600秒,你必须增加php会话超时,为此你必须在php.ini文件中设置session.gc_maxlifetime
。
之后你必须重启apache。
我已经这样做了,它适用于Ubuntu 14.04。
答案 1 :(得分:1)
首先,您需要验证系统上是否允许使用ini_set?
要了解服务器上的默认(基于文件的会话)会话超时值,您可以通过ini_get命令查看它:
$currentTimeoutInSecs = ini_get(’session.gc_maxlifetime’);
//会话超时所需的php.ini设置。
ini_set(’session.gc_maxlifetime’, 3600);
ini_set(‘session.gc_probability’,1);
ini_set(‘session.gc_divisor’,1);
session_set_cookie_params(3600);
session_start(); // ready to go!
如果你想改变session.cookie_lifetime。
这在一些常见文件中是必需的,因为要在整个应用程序中获取会话值,我们需要编写session_start();到每个文件然后只会获得$ _SESSION全局变量值。
$sessionCookieExpireTime=8*60*60;
session_set_cookie_params($sessionCookieExpireTime);
session_start();