XE(XpressEngine) 팁

XE 인증세션 DB 사용

xemaker 2017. 7. 11. 08:40

인증 세션 DB 사용: 인증 시 사용되는 PHP 세션을 DB로 사용하는 기능 입니다. 웹서버의 사용률이 낮은 사이트에서는 비활성화시 사이트 응답 속도가 향상될 수 있습니다. 단, 현재 접속자를 구할 수 없어 관련된 기능을 사용할 수 없게 됩니다.


위의 내용이 XE 관리자페이지에 설명입니다.


설정은 관리자페이지 > 설정 > 일반 > 고급 > 인증세션 DB 사용


세션을 어느 곳에 저장 할지 설정하는 것이다.  db 혹은 php가 지정한 위치에 저장 할 수 있다. 세션을 따로 관리하거나 이용하기 위해서이다. 예로 동시접속자 위젯의 경우 db 사용을 해야 정상작동을 한다.


위에처럼 인증세션 DB 사용을 "아니오" 라고 하고 


$arg='';

$oSessionModel = &getModel('session');

$out = $oSessionModel->getLoggedMembers($arg);

debugPrint($out);


이렇게 찍어보면 NULL 로 나온다. 인증세션 DB 사용을 "예"로 해야 값이 찍힐것이다.


DEBUG : Object Object

        (

            [error] => 0

            [message] => success

            [variables] => Array

                (

                    [_query] => SELECT `member_srl`  FROM `xe_session` as `session` , `xe_modules` as `modules`   WHERE `session`.`cur_mid` = `modules`.`mid` and `modules`.`site_srl` = ? and `member_srl` >= 1 and `last_update` >= ?   GROUP BY `member_srl`  

                    [_elapsed_time] => 0.00200

                )

        

            [httpStatusCode] => 

            [data] => Array

                (

                    [0] => stdClass Object

                        (

                            [member_srl] => 4

                            [user_id] => admin


...


그리고 중복로그인 시 주의 사항이 NULL == NULL 인 경우이다.