2011-01-21 3 views
2

나는 codeigniter가 세션을 쿠키로 저장한다는 것을 알고있다. 나는 주위를 읽는 것으로부터 다소 불안정하다는 것을 알고있다. 그래서 ... 나는 세션을 위해 데이터베이스 저장소를 사용할 계획이다. 나는 믿는다 :codeigniter 세션과 쿠키

a) 더 안전합니까?
b) 쿠키가 제공하는 4kb 제한보다 많은 데이터를 저장할 수 있습니까? 나는 시스템이 예를 들어, 내 응용 프로그램에서 나는 정기적으로 사용자가 로그인되어 있는지 확인하기 위해 세션 데이터를 조회하려면, 검색이 느리게 될 것 같아요 역설적으로에 그러나

.

인가이다 데이터베이스에 세션을 저장하는 것이 좋은 생각입니까, 아니면 내 응용 프로그램이 상당히 느려 집니까?

세션 및 쿠키에 관한 다른 아이디어 나 제안 사항이 있으면 알려 주시면 감사하겠습니다.

답변

5

음, 그건 사실이고 거짓입니다. CodeIgniter는 DB에 데이터를 저장하도록 구성 할 수 있지만 클라이언트에 저장하기 전에 쿠키를 암호화 할 수 있습니다. 또한 MD5는 데이터 무결성을 보장하기위한 쿠키 내용입니다 (기본적으로 쿠키의 MD5가 올바르게 일치하지 않으면 거부됩니다). 그래서 기본적으로 쿠키를 편집하는 것이 가능하지만, 그렇게하는 것은 성가시다.

개인적으로 나는 일반적으로 세션 수준 데이터를 $ _SESSION에 저장하는 것을 선호하며이를 수행 할 수 있도록 내 세션 개체를 수정했습니다. 또한 PHPSESSID 변수를 더 복잡한 것으로 만듭니다.

"데이터베이스에 세션을 저장하는 것이 좋습니까?"라는 질문에 대해서는 데이터베이스의 속도와 메모리 요구 사항에 따라 다릅니다. 상황을 늦추거나 구성 등을 기반으로 작업 속도를 향상시킬 수 있습니다.