CI 묻고 답하기

제목 Native Session
글쓴이 탱크 작성시각 2012/11/30 11:39:56
댓글 : 4 추천 : 0 스크랩 : 0 조회수 : 19009   RSS

CISession 관련 문제로 몇일째 고민이 깊어지고 있습니다.

문제는 세션이 생성된 후에, 임의로 변경이 되어 세션에 저장된 user_data 값을 가져오지 못한 다는 건데요.

저와 비슷한 경험을 하신 듯한 질문는 포럼에도 많이 올라와 있는 듯 한데 특별한 해결책은 없는 것 같더군요...
해외사이트를 뒤져보아도, 딱히 답은 없어 보이구요.

미천한 실력이라 Core를 까보기도 쉽지 않고, 참 난감합니다.

이리 저리 검색 중에, 아래와 같이 Native PHP Session을 Codeigniter의 문법으로 사용할 수 있도록 만든 것이 있더군요.
현재는 이리 저리 소스를 살펴보고 있는데, 헐... 역시 어렵네요 ㅠㅠ
http://thinkdiff.net/php/replacing-codeigniters-session-by-phps-native-session/

그래도 많은 경험자 분들은 위 URL을 보신 적이 있을 것 같기도 하고, 또 어떤 분에게는 도움이 될까하여 올려봅니다.


참고로 제 문제는 이런거였습니다.

1. 최초에 로그인을 통해 세션이 만들어진 후 브라우저 쿠키에 생서된 session id를 이용하여
   session 테이블을 검색하면 정상적으로 보여집니다.
2. 그 상태를 유지하면서 일정한 시간이 흘러서 확인해보면, 간혹 로그인 영역이 깨집니다.
   (다시 말씀드려 session table에서 user-data값을 가져오지 못하는 경우가 발생하는거죠)
3. 깨질때 쿠키의 session id를 보면 1번과 값이 달라져있고, 그 session_id는 테이블에서 검색이 되지 않구요.
4. 깨진 상태로 더 두어보았습니다. 시간이 늦어 퇴근하고, 아침에 출근해서 쿠키를 살펴보았더니...
    3번과 또 다른 값을 가지고 있는거에요 ㅜㅜ   역시 테이블을 검색했더니, 해당 session_id가 보이지 않습니다.
* 모든 브라우저에서 가끔 발생하는 것으로 보여지나, IE8에서 조금 더 발생하는 것으로 보여집니다.
 다음글 질문있어서요 (1)
 이전글 PHP(no 프레임워크) 날코딩으로 작업하다가 CI로 ... (9)

댓글

헛발이2 / 2012/11/30 12:01:56 / 추천 0
http://www.cikorea.net/tip/view/1009/page/1

위의 링크된 내용으로는 해결이 안되는 문제인가 보네요?
한대승(불의회상) / 2012/11/30 16:40:25 / 추천 0
아래 주소를 확인 하세요. ^^

http://cikorea.net/source/view/638/page/1


탱크 / 2012/11/30 18:21:49 / 추천 0
헛발이2 // 실력이 미천하여 살펴보기만 하고, 적용은 감히 못해보고 있습니다. 상용이라서요 ㅜㅜ~ 감사합니다.

불의회상 // 기존 코딩을 바꾸지 않아도 되는군요. 용기를 내어 시도해보고 결과 말씀 드릴께요 ^^~ 캄사합니다.

탱크 / 2012/12/05 03:41:35 / 추천 0
http://ellislab.com/codeigniter/user-guide/changelog.html 에 보면,

Fixed a bug (#1314) - Session Library method sess_destroy() didn't destroy the userdata array.

2.1.3으로 업그레이드 하면서, 위 버그가 수정되었다고 하네요.
정확한 내용까지는 보지는 못했지만, 2.1.3 이하 버전에서는
위와 같은 문제가 있는 것으로 보여지네요. ㅡㅜ

혹, 참고가 될까하여, 원글로 올리기는 뭐하고 자문에 자답을 해봅니다~