0

我试图让rememberMe()函数记住用户并一次保留会话数月。

我已经读过,如果您通过rememberMe()传递一个值,如果会话已经开始,它将不起作用。从 PHP 手册中的session_set_cookie_params()文档中,“您需要在调用session_start()之前为每个请求调用 session_set_cookie_params( )。”

通过我认为我应该在我的引导程序中调用Zend_session::start() 。我的问题是rememberMe()似乎不起作用。

当我调用session_get_cookie_params(); 我得到:

Array([lifetime] => 0 [path] => / [domain] => [secure] => httponly] =>)

有什么想法吗?

4

2 回答 2

1

我已经解决了这个问题。会话被同一服务器上的另一个网站删除,会话每 24 分钟到期一次。为了解决这个问题,我将 session.save_path 设置为一个新文件夹。我还将 session.gc_maxlifetime 和 session.cookie_lifetime 设置为非常大的数字。

问题解决了!

于 2009-11-06T15:38:16.083 回答
0

不要使用 start() 方法。如果您使用 MVC,它应该可以正常工作。session_start 必须在发送任何输出之前调用,并且在发送响应之前(因为输出缓冲)。会话在第一次使用 Zend_Session_namespace 时自动启动。

于 2009-10-27T21:54:52.313 回答