CI 묻고 답하기

제목 로그인상태에서 '크롬>인터넷사용기록삭제' 하면 header는 로그아웃 UI로 보이고...
카테고리 CI 2, 3
글쓴이 그동안 작성시각 2018/08/07 22:14:23
댓글 : 6 추천 : 0 스크랩 : 0 조회수 : 15916   RSS

로그인상태에서 '크롬>인터넷사용기록삭제' 하면

- header는 로그아웃 UI로 보이고

- 본문은 로그인한 유저가 볼수 있는 페이지가 보입니다.

 

궁금한 점

1. '크롬>인터넷사용기록삭제' 하면 세션이 만료되나요?

2. 만료되는 것이 정상이라면, 만료시 자동으로 메인(로그인전)으로 리다이렉트 시키려면 어떤 부분을 수정하면 될까요?

 다음글 디렉토리로 있는 라이브러리는 써드파티에 넣어야 하나요? (3)
 이전글 세션관련 질문입니다. (1)

댓글

kaido / 2018/08/08 08:59:14 / 추천 0

네. 보입니다.

크롬의 세션 삭제는 로컬의 세션을 강제로 삭제합니다

로컬의 세션이 삭제 되었지만 서버는 세션이 삭제된지 모릅니다.

로그인한 페이지가 보이는 이유는 이미 로그인된 페이지로 랜더링이 끝나 있기 때문입니다.

 

세션 삭제하자 마자 리다이렉션이 되려면 매초 마다 세션이 살아있는지 체크하는 수밖에 없습니다

매우 비효율적이며 자원을 잡아먹기 때문에  이런식으로 구현하지 않습니다.

 

크롬에서 세션삭제 되는거 자체가 예외적인 현상 이라고 판단하셔야 합니다.

그동안 / 2018/08/08 09:26:35 / 추천 0
일반적인 현상이라니 그나마 다행이네요. 전 제가 뭘 잘못한줄 알았어요;;

궁금한게...
제가 phpmyadmin도 같이 열고 코딩하고 있었는데, phpmyadmin은 로그인 페이지로 돌아가서 “세션이 만료되었습니다”하는 메세지까지 보여주고 있다라고요.

제가 만든거와 비교되서ㅠㅠ
세션을 매초마다 체크하는 거 외에는 없을까요?
kaido / 2018/08/08 09:37:53 / 추천 0

서버에서 체크하는것 말고는 세션타입 주기를 짦게 주는 방법이 있습니다.

보통 5분 단위 정도 줍니다.

5분안에 세션 업데이트가 없으면 튕겨져 나오게 됩니다.

세션 타임으로 검색해 보시면 여러가지 나옵니다.

 

혹시 몰라서 phpmyadmin 세션 삭제 테스트 해보았습니다만 동일 합니다.

즉시 체크가 되지는 않습니다.

그동안 / 2018/08/08 11:20:25 / 추천 0

세션 타임은 설정되어 있습니다.

지금 보니 제가 뭔가 처리를 안한거 같습니다.

제 경우는 로그인해야만 볼수 있는 페이지를 보다가, 세션이 삭제된 후, 새로고침해도 로그인(또는 특정) 페이지로 넘어가지 않고,

header만 로그아웃 UI로 바뀌어보여지네요.  뭔가 처리를 안한듯 합니다.  찾아봐야겠네요;;

그동안 / 2018/08/08 12:41:20 / 추천 0

php 네이티브의 session_destroy(); 후 리다이렉트url는    (제가 이게 안되고 있습니다)

코드이그나이터(2.x)에서는 어디서 처리하나요? 프레임워크에서 알아서 처리해 주나요? 

 참고로 autoload에 session 추가되어 있습니다. 

kaido / 2018/08/08 13:08:10 / 추천 0

CI  에서 처리하는 방법은 후킹 방법이 있습니다.

http://cikorea.net/bbs/view/lecture?idx=12894&page=1&view_category=&lists_style=

또한 CI 는 CI 세션이 따로 있고 PHP 네이티브 세션하고는 관련이 없습니다.