[XE] 1.4.5.x 대 로그인유지 풀림현상 해결방법

돌아다니면서 구한 자료로 공부하는 공간입니다..

틀린부분이 있다면 말씀해주시면 수정하도록 하겠습니다.

※ 남을 비방하거나 욕 / 정치적인 글은 삭제 대상이 됩니다. ※

[XE] 1.4.5.x 대 로그인유지 풀림현상 해결방법

만키로군 0 1427 0

아래에 1.7.x, 1.5.x 버젼에서  PC와 스마트폰 (실은 스마트폰이 아닌 환경이 다른 PC에서도 똑같은 현상 발생)을 번갈아 가며 자동로그인하면 로그인이 그 전 기기에서 풀려버리는 현상에 대한 해결 방법을 제시했는데, 이번에는 1.4.5.x 버젼에서 해결 방법입니다.

 

xe.1.4.5.10 버젼을 기준으로 설명드리겠습니다.  만약 버젼이 다를 경우 아래 함수 이름을 확인하시고 그 함수내에서 해당되는 줄을 찾아보세요.

 

/modules/member/member.controller.php에서 아래 두 줄을 수정하시면 됩니다.

 

1398줄 (doAutologin 함수 내)
수정 전 : $key = md5($user_id.$password.$_SERVER['REMOTE_ADDR']);
수정 후 : $key = md5($user_id.$password);

 

1476줄의 (doLogin 함수 내)
수정 전 : $autologin_args->autologin_key = md5(strtolower($user_id).$member_info->password.$_SERVER['REMOTE_ADDR']);
수정 후 : $autologin_args->autologin_key = md5(strtolower($user_id).$member_info->password);


이렇게 하면 autologin 테이블에 ip 주소를 뺀 아뒤+암호로만 된 key를 생성합니다.  따라서 IP주소가 다른 기기에서 자동로그인을 해도 그 전 기기에서 자동로그인이 풀리는 건 문제를 해결해 줄 것이라 생각됩니다.

 

단지 제가 xe.1.4.5.10 설치를 하지 않아 1.7.3.x 기준으로 문제가 되는 로직을 파악한 내용으로 분석한 겁니다.  따라서 직접 테스트는 해 보지 않았으나 될 거라 확신하나만 1.4.x 설치하신 분이 테스트 해 보시고 알려주세요.

0 Comments
제목