제목 | User_Authentication(사용자_검증)_1.docx 를 보다가 | ||
---|---|---|---|
글쓴이 | 송군 | 작성시각 | 2011/09/18 12:57:08 |
|
|||
안녕하세요, MAX님이 올려주신 User_Authentication(사용자_검증)_1.docx를 보며 따라해보고 있는데 무언가 막히는 것이 있어 이렇게 올려봅니다.. 혼자 풀어보려고 끙끙 댔지만 너무 답답해서 글을 쓰게 되네요..-_-휴 해당 문서에 나와있는대로 모든 코드를 작성하고 실행시켜 보았습니다.(상속 및 생성자코드는 2.x버전으로 수정하여 하였습니다) ① 먼저 회원가입부터 한 후 로그인을 하였습니다. 로그인 완료 페이지가 나오고, 그 페이지에서 세션을 찍어보았더니 무리없이 잘 나오더군요.. 세션에 추가적인 값도 집어넣어서 잘 나오는지 확인했습니다. ② 허나, 그 페이지에서 dash보드로 이동하게하는 링크가 있어서 클릭하면 세션이 날라가는건지 다시 로그인 화면으로 넘어갑니다-_-;; ①에서 $str = $this->account_model->logged_in(); echo $str; 을 해보면 로그인을 한 후이기 때문에 TRUE값인 1이 찍힙니다. 그러나 ②에서 $str = $this->account_model->logged_in(); echo $str; 를 해보면 아무값도 안찍힙니다. TRUE가 아니라면 최소 0이라도 찍혀야 하는데.. 왜일까요? 모델을 읽지 못하는 것일까요? 생성자 함수에 $this->load->model('account_model'); 라고 되어있는데... 하 뭐가 문제죠? |
|||
다음글 | form검증 사용 하시나요?? (7) | ||
이전글 | 개념적인 질문을 드립니다 ^^;; (12) | ||
다니엘SEO
/
2011/09/18 13:18:49 /
추천
0
혹시...세션의 uri 설정 부분 보셨나요?? config파일에서요
|
송군
/
2011/09/18 13:22:40 /
추천
0
다니엘SEO님 그게 무슨 말씀이죠?
세션의 uri는 처음듣습니다. 혹시 config파일에서 세션관련하여 뭔가 더 설정해야할게 있나요? 메뉴얼에는 $config['sess_cookie_name'] = 'ci_session'; $config['sess_expiration'] = 7200; $config['sess_expire_on_close'] = FALSE; $config['sess_encrypt_cookie'] = FALSE; $config['sess_use_database'] = TRUE; $config['sess_table_name'] = 'ci_sessions'; $config['sess_match_ip'] = FALSE; $config['sess_match_useragent'] = TRUE; $config['sess_time_to_update'] = 300; 이것밖에 설명이 안되어있던데;; 혹시 제가 뭔가 빠뜨린게 있나요? config파일에 세션관련하여 이것밖에 없는것 같아요.. |
다니엘SEO
/
2011/09/18 13:38:04 /
추천
0
CI 세션은 세션이 아니라고하더라구요.
//쿠키설정 $config['cookie_prefix'] = ""; $config['cookie_domain'] = ".domain.com"; $config['cookie_path'] = "/"; $config['cookie_secure'] = FALSE;
이 부분도 설정해보세요~ |
다니엘SEO
/
2011/09/18 13:39:49 /
추천
0
.domain.com 부분에서 .(쩜) 잊지 마세요 ㅎ
|
송군
/
2011/09/18 18:11:04 /
추천
0
' ');; 해보았는데 똑같아요...ㅠ 하
|
송군
/
2011/09/18 20:18:38 /
추천
0
자답입니다.
오늘 하루종일 이것만 붙잡다가 겨우 문제가 뭔지 알았네요. config.php 에서 sess_match_useragent 를 FALSE로 주었더니 잘 되었습니다. 세션관련된 게시글을 하나씩 찾아보다가 웅파님이 답변한 댓글을 보고 혹시나 해서 해보았더니 잘 되네요.. 하ㅠㅠ감격의 눈물이.. 메뉴얼의 세션 내용중 이 내용은 맨 아래 명시되어 있는데 설명이 세션데이터를 읽어들일때 User Agent 를 일치시킬지 설정합니다. 라고만 되어있어서 이게 무슨말이지? 일단 넘어가자 하고 넘어간게 화근이었던 것 같습니다-_-;; 아직도 저게 무슨 뜻인지 모르겠네요, 유저어젠트를 일치시킨다는거.. 알고 계신분은 아래 댓글로 좀 설명좀 해주세요 ^^;; |
최용운
/
2011/09/18 22:46:53 /
추천
0
user agent 정보는 브라우저 정보입니다. 예를 들어 Mozilla/5.0 (Windows NT 5.1) AppleWebKit/535.1 (KHTML, like Gecko) Chrome/13.0.782.220 Safari/535.1
이런 것들이죠. 테스트 해보진 않았지만, 생성된 세션에 대해 브라우저 정보까지 같아야 동일한 세션으로 판단한다는 의미인거 같습니다. |
송군
/
2011/09/18 23:11:24 /
추천
0
Re : 최용운님/
그렇군요.. 그렇다면 생성된 세션에 담긴 브라우저 정보가 저의 브라우저와 일치하지 않았기 때문에 생긴 일이었다는건 잘못된 값을 저장하고 있다는 것이군요. 흠..실제로 dB를 확인해보니까 Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1; 이라고 찍히는데 저는 윈도우 7을 사용중이고 모질라4.0이 아닌 인터넷 익스플로러 8을 사용중이었어요. 값이 제대로 들어가지 않았던 거군요.-_-;;; 흠. 이것도 어딘가에서 설정을 잘못해줬기 떄문인지 아닌지는 좀 찾아봐야 할 것 같습니다. 알려주셔서 감사합니다.! : ) |
변종원(웅파)
/
2011/09/19 09:59:55 /
추천
0
아마 2.0.3에서는 버그픽스 되었을거라고 생각이 되는데요(바뀐 부분을 대충 봐서..)
user agent 필드도 기존 50에서 더 크게 바뀌었을겁니다. 50이면 잘려서 들어가거든요. |