2012-02-14 4 views
4

최근에 Cake2.0으로 전환했으며 Sessions 타이밍 문제가 훨씬 빨리 발생했습니다.CakePHP 2.0에서 너무 빨리 세션 시간 초과가 발생했습니다.

예제를 documentation에서 복사하고 세션 유형을 php로 설정하고 제한 시간을 3 일 (4320 분)으로 설정합니다. 그러나 다양한 기사를 읽은 후에도 Cake에서 3 일로 제한 시간을 설정 한 후에도 PHP.ini가 세션 또는 GC에 대한 시간 제한을 더 짧게 설정하면 PHP가 GC에서 세션을 파괴 할 수 있습니다.

그래서 세션 제한을 cake로 변경했으며 동일한 시간 제한으로 변경했습니다.

그러나 이것은 3 일 동안 로그인해야하지만, 다시 로그인해야 겨우 3 시간 정도 걸립니다.

제가 알아야 할 세션 시간 초과 문제입니까, 아니면 분 단위가 아닌 초 단위의 시간 초과입니까? 1.3과 같은 Security.level의 영향을 받습니까? 나는 이것이 2.0에서 어떻게 작동하는지 또는 문제를 일으킬 수있는 것에 대한 어떤 어려운 문서도 찾을 수 없었다.

미리 감사드립니다.

응답 : 나중에 들어와보고있는 사람 누구에게나. 세션 타임 아웃이 Config.write()에서 값을 저장하지 않는 버그가 2.0.5에 있습니다. (베타 버전을 떠날 때 또는 2.1)는 보안 구성 요소를 사용하는 경우

+0

멋진 정보! 솔루션으로 질문을 업데이트 해 주셔서 감사합니다. –

+0

이상한, 아직도 2.0.6에서이 버그를 얻고 있습니다 ... –

답변

1

, 2.0.6에 대한 업데이 트를 해결하기 위해, 당신은 항상뿐만 아니라 3 시간 그들에 만료을 변경 시도 할 수 있습니다 :

$components = array(
    'Security' => array(
     'csrfExpires' => '+3 hour' 
    ) 
); 

나는 이것이 좋은 생각이라고 말하지는 않지만 문제의 범위를 좁히는 데 도움이 될 수 있습니다. 보안 구성 요소를 사용하는 경우 이는 아마도 문제 일 것입니다.

또한 Session.timeout은 초 단위가 아닌 분 단위로 표시됩니다.

관련 문제