영문페이지 세션 재질문
본문
안녕하세요.
현재 같은 도메인 안에
/ <- 국문페이지
/en <- 영문페이지
로 개발중에 있습니다.
국문페이지에서 관리자를 로그인 시,
영문페이지도 관리자 권한을 유지하게 하려는 작업중인데,
common.php에 session_save_path 주석해제 후 경로 설정등을 해봐도 공유가 잘 되지 않습니다.
도움을 얻을 수 있을까요?
버전은 5.5x 버전 입니다.
ㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡ
도움주신대로 /config 와 /en/config 의 SESSION_PATH 값을 동일하게 맞춰 보았지만, 공유가 되지를 않습니다...
방법을 알 수 있을까요?
답변 5
짐작에
국문 로그인
영문 페이지 열고
다시 국문으로 오면 로그인이 풀리지 않나요?
// 차단된 회원이면 ss_mb_id 초기화, 또는 세션에 저장된 회원 토큰값을 비교하여 틀리면 초기화
if( ($member['mb_intercept_date'] && $member['mb_intercept_date'] <= date("Ymd", G5_SERVER_TIME))
|| ($member['mb_leave_date'] && $member['mb_leave_date'] <= date("Ymd", G5_SERVER_TIME))
|| (function_exists('check_auth_session_token') && !check_auth_session_token($member['mb_datetime']))
) {
set_session('ss_mb_id', '');
$member = array();
} else {
여기를
// 차단된 회원이면 ss_mb_id 초기화, 또는 세션에 저장된 회원 토큰값을 비교하여 틀리면 초기화
if( false)
|| ($member['mb_leave_date'] && $member['mb_leave_date'] <= date("Ymd", G5_SERVER_TIME))
|| (function_exists('check_auth_session_token') && !check_auth_session_token($member['mb_datetime']))
) {
set_session('ss_mb_id', '');
$member = array();
}
이렇게 해서 로그인 유지가 된다면
if 문 안에 함수를 하나씩 조사?해 봐야겠네요.
같은 도메인이면 별도 설정없이 세션이 공유되어야 정상인데
어떤 문제인지 잘 모르겠네요
https://www.php.net/manual/en/session.configuration.php#ini.session.cookie-path
부분도 확인해보세요
data/session
en/data/session
이 같아야 세션 공유가 됩니다.
==
도움주신대로 /config 와 /en/config 의 SESSION_PATH 값을 동일하게 맞춰 보았지만,
==
해 보신 소스를 올려 보세요
국문페이지에서 관리자를 로그인 시,
영문페이지도 관리자 권한을 유지하게 하려는 작업중인데,
==
혹시 각각 사이트 주소가 다른 건 아니죠?
찾았습니다.
그누보드가 바뀌면서 변경된 부분이 있는데
common.php에서
// 차단된 회원이면 ss_mb_id 초기화, 또는 세션에 저장된 회원 토큰값을 비교하여 틀리면 초기화
if( ($member['mb_intercept_date'] && $member['mb_intercept_date'] <= date("Ymd", G5_SERVER_TIME))
|| ($member['mb_leave_date'] && $member['mb_leave_date'] <= date("Ymd", G5_SERVER_TIME))
|| (function_exists('check_auth_session_token') && !check_auth_session_token($member['mb_datetime']))
) {
$member['mb_datetime'] 이 값이 같아야 하네요.
phpmyadmin 등에서 값을 같게 하시거나
이 부분을 사용하지 않도록 소스를 수정해 보세요.