끊기지 않는 세션을 만들려면 어떻게?

여기에 질문 올려 죄송합니다 ^^;;;;;

세션함수를 아무리 주물러도 원하는 결과를 얻을수 없네요
세션의 저장기간을 연장하는것도 힘들지만 줄이는것 역시 힘드네요 왜그러죠?? ^^

제가 궁금한건..
모바일싸이트의 경우 단말 아이피가 유동적으로 계속 바뀌는데
세션의 유지기간을 연장하더라도 아이피라든지 여타 접속 환경에 따라
로긴을 유지하는 스킴이 일밥 웹하곤 다를것 같다는 생각이 드는데요..

혹시 네이버처럼 모바일에서 로긴 유지하는 팁 없을까요????
제발~~~~


session

Session Supportenabled
Registered save handlersfiles user

DirectiveLocal ValueMaster Value
session.auto_startOffOff
session.bug_compat_42OnOn
session.bug_compat_warnOnOn
session.cache_expire9999999999180
session.cache_limiterprivatenocache
session.cookie_domain.....no value
session.cookie_lifetime00
session.cookie_path//
session.cookie_secureOffOff
session.entropy_fileno valueno value
session.entropy_length00
session.gc_divisor100100
session.gc_maxlifetime99999999995400
session.gc_probability11
session.namePHPSESSIDPHPSESSID
session.referer_checkno valueno value
session.save_handlerfilesfiles
session.save_path../data/session/tmp
session.serialize_handlerphpphp
session.use_cookiesOnOn
session.use_only_cookiesOffOff
session.use_trans_sidOffOff

|

댓글 13개

곰곰히 생각을 해봤는데..
모바일의 경우 개인기기이기 때문에 굳이 세션을 이용할 필요가 없을것 같다는 생각이 드는데요..
모바일의 고유번호?? 이게 뭔지는 모르겠지만.. 이런게 있다면 읽어서
로그인시 디비에 쓰고 다음 접속시 1순위로 고유번호와 디비가 일치하면 로긴유지
다르다면 로긴요구 이렇게 하는 방법도 있지 않을까 싶습니다.
다른 아이디로 로긴할 필요도 있기 때문에 로그 아웃시 디비를 초기화 하고..
이게 구현 가능할지도 의문이고
또 이렇게 하면 어떤 문제가 있을까요?
좋은 생각같은데요...
세션 삽질한 이유는 찾았네요.. 에휴~
session.gc_probability = 1 이게 문제였군요 divisor와 연계해서 1% 확률로 동작하기때문에
아무리 lifetime을 조정해도 100번 시도 1번 삭제네요..
방문자가 많은 싸이트는 꼭 1로 해야 하나 테스트 용도웹이라면 이걸 꼭 100으로 놓고 시험해야 되네요..
이건 정말 팁입니다 ^^
그리고, 모바일의 고유번호 mac 정보 이런걸 뽑기가 어렵군요.. 좀더 검색해봐야 겠음...
세션을 DB에 저장시켜두지 않나요? ^^
모바일사이트는 그게 팁인가요? 제가 잘 몰라서요 ^^
해결된것 같네요

common.php 파일 수정합니다.

1. 아래 주석처리
//ini_set("url_rewriter.tags",""); // 링크에 PHPSESSID가 따라다니는것을 무력화함 (해뜰녘님께서 알려주셨습니다.)

2. 아래 참조
ini_set("session.cache_expire", 60*24*30); // 세션 캐쉬 보관시간 (분)
ini_set("session.gc_maxlifetime", 60*10); // session data의 gabage collection 존재 기간을 지정 (초), 이게 expire보다 우선임
ini_set("session.gc_probability", 0); // session.gc_divisor(100)과 연계하여 %확률로 세션지워줌, 테스트시 100 권장
session_set_cookie_params(60*60*24*365, "/"); // 쿠키 세션 연동 유효시간 설정(초)
ini_set("session.cookie_domain", $g4['cookie_domain']);
@session_start();

3. 아래 주석처리
// 4.00.03 : [보안관련] PHPSESSID 가 틀리면 로그아웃한다.
//if ($_REQUEST['PHPSESSID'] && $_REQUEST['PHPSESSID'] != session_id())
// goto_url("{$g4['bbs_path']}/logout.php");

4. PC에서 모바일 페이지 접속되지 않도록 방어 코드 삽입 index.php 에 넣는게 좋을것 같네요

모바일브라우져에서 쿠키사용 안하거나 지우면 다시 로긴해야 하구요.. 이건 시험해보니 네이버도 마찬가지 네요

이것도 팁 되겠쉼돠~~~ ^^
참고하겠습니다.~
세션 만들 때 쿠키 시간을 증가 시키고 IP를 체크하지 않으면 무한히 접속되겠지만 보안상 좀 위험할 듯 싶네요.....
pc에서는 그렇지만.. 모바일에선 감수할수 있지 않을까요? 타인의 손에 넘어가면 위험할수도 있지만 본인의 편의를 위해 사용하는거라.. 감수할 부분이지 않을까 싶네요...
모바일에서는 자동로그인을 강제로 on 되도록 설정하시면 됩니다.
그렇게 해도 안돼요~ ^^
모바일 뿐만 아니라 일반웹에서도 자동로긴은 금방 풀려버려요~
그누보드에서 가장 아쉬운게 아이디 패스워드 기억하는 방법과 자동로긴이 잘 안된다는거..
모바일에서 로컬 스토리지를 이용하면 손쉽게 아이디 비번 저장을 만들 수 있습니다.
모바일에 익숙해지시면 php 세션을 가지고는 불가능한 경우는 아주 많이 나옵니다.
그리고 모바일웹에서 하이브리드나 j쿼리 모바일 등의 프레임웍을 사용해야 할때도 벽에 부딪치므로
로그인 관련해서는 jquery나 자바스크립트 + ajax + php를 이용해서 방법을 하나 정도는 만들어 두시는게 좋은데 개인적인 생각입니다.~

저 같은 경우는 쿠키로 세션을 갱신시키면서 체크하는 방법을 쓰고 있습니다.
보안상 취약점은 모바일은 아무리 해도 완벽에 가깝게도 만들수 없겠더라구용~
댓글을 작성하시려면 로그인이 필요합니다. 로그인

프로그램

태그 필터 (최대 3개) 전체 개발자 소스 기타 mysql 팁자료실 javascript php linux flash 정규표현식 jquery node.js mobile 웹서버 os 프로그램 강좌 썸네일 이미지관련 도로명주소 그누보드5 기획자 견적서 계약서 기획서 마케팅 제안서 seo 통계 서식 통계자료 퍼블리셔 html css 반응형 웹접근성 퍼블리싱 표준화 반응형웹 홈페이지기초 부트스트랩 angularjs 포럼 스크린리더 센스리더 개발자톡 개발자팁 퍼블리셔톡 퍼블리셔팁 기획자톡 기획자팁 프로그램강좌 퍼블리싱강좌
+
제목 글쓴이 날짜 조회
13년 전 조회 2,185
13년 전 조회 4,433
13년 전 조회 3,133
13년 전 조회 4,313
13년 전 조회 2,127
13년 전 조회 1,333
13년 전 조회 996
13년 전 조회 2,124
13년 전 조회 5,063
13년 전 조회 1,322
13년 전 조회 4,165
13년 전 조회 5,693
13년 전 조회 1,339
13년 전 조회 2,594
13년 전 조회 1,705
13년 전 조회 667
13년 전 조회 2,384
13년 전 조회 2,131
13년 전 조회 813
13년 전 조회 770
13년 전 조회 3,263
13년 전 조회 1,667
13년 전 조회 695
13년 전 조회 556
13년 전 조회 8,182
13년 전 조회 4,684
13년 전 조회 7,880
13년 전 조회 829
13년 전 조회 1,464
13년 전 조회 1,884
13년 전 조회 1,284
13년 전 조회 2,792
13년 전 조회 999
13년 전 조회 1,209
13년 전 조회 696
13년 전 조회 1,230
13년 전 조회 1,417
13년 전 조회 1.3만
13년 전 조회 1,139
13년 전 조회 4,669
13년 전 조회 1,647
13년 전 조회 693
13년 전 조회 979
13년 전 조회 3,794
13년 전 조회 962
13년 전 조회 4,626
13년 전 조회 710
13년 전 조회 865
13년 전 조회 1,280
13년 전 조회 8,803
13년 전 조회 1,515
13년 전 조회 2,559
13년 전 조회 1,699
13년 전 조회 1,959
13년 전 조회 2,053
13년 전 조회 1,123
13년 전 조회 1,313
13년 전 조회 1.8만
13년 전 조회 2,369
13년 전 조회 4,402
13년 전 조회 1,729
13년 전 조회 2,154
13년 전 조회 2,202
13년 전 조회 1.6만
13년 전 조회 1,124
13년 전 조회 978
13년 전 조회 765
13년 전 조회 1,657
13년 전 조회 3,241
13년 전 조회 3,478
13년 전 조회 2,163
13년 전 조회 5,702
13년 전 조회 2,850
13년 전 조회 6,064
13년 전 조회 1,669
13년 전 조회 2.1만
13년 전 조회 950
13년 전 조회 1,438
13년 전 조회 1.7만
13년 전 조회 2,823
13년 전 조회 1,069
13년 전 조회 3,784
13년 전 조회 1,236
13년 전 조회 1,388
13년 전 조회 828
13년 전 조회 2,565
13년 전 조회 1,550
13년 전 조회 704
13년 전 조회 951
13년 전 조회 7,511
13년 전 조회 2,444
13년 전 조회 976
13년 전 조회 1,353
13년 전 조회 2,919
13년 전 조회 1,066
13년 전 조회 1.9만
13년 전 조회 2,986
13년 전 조회 2,697
13년 전 조회 4,864
13년 전 조회 1,973
🐛 버그신고