질문 Q #22698
CI 3.1 $_SESSION 데이터 공유
윤동 2020-09-10 18:24:45

CI3.1, php5.6 사용중입니다.

autoload에서 session 설정하였으며,

config에 다음과 같이 session 사용 설정하였습니다.

 

$config['sess_driver'] = 'files';

$config['sess_cookie_name'] = 'ci_session';

$config['sess_expiration'] = 0;

$config['sess_save_path'] = APPPATH."session";

$config['sess_match_ip'] = FALSE;

$config['sess_time_to_update'] = 300;

$config['sess_regenerate_destroy'] = FALSE;

 

로그인 시 컨트롤러에서 $this->session->set_userdata($data); 로 session 박고 $_SESSION 호출하면 잘 호출됩니다.

하지만 redirect 후에는 페이지에서 $_SESSION이 빈값으로 나옵니다ㅠ

view 폴더 안에서 프런트 단 쓰는게 아니고 application 폴더 바깥에 따로 폴더 만들어서 프런트 단 사용중입니다.

그래서 $this->session을 사용하지 못하고  $_SESSION으로 사용중인데, 

왜 컨트롤러에서는 $_SESSION이 잘 호출되는데 외부 페이지에서는 안될까요ㅠㅠㅠ

3.1버전은 디폴트 session이 files아닌가요?.. 

답변 3
#1 한대승(불의회상) 2020-09-10 20:17:19
CI $_SESSION과 php 네이티브 $_SESSION 동작 방식이 달라서 그렇습니다.
#2 윤동 2020-09-10 20:51:51
같이쓰려면 어떤설정을 변경해야할까요
#3 한대승(불의회상) 2020-09-11 09:18:55
CI 세션을 쓰지 마시고 PHP 네이티브 세션을 사용하세요.