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

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

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

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

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


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,162
13년 전 조회 4,416
13년 전 조회 3,110
13년 전 조회 4,288
13년 전 조회 2,103
13년 전 조회 1,308
13년 전 조회 963
13년 전 조회 2,101
13년 전 조회 5,034
13년 전 조회 1,300
13년 전 조회 4,143
13년 전 조회 5,671
13년 전 조회 1,310
13년 전 조회 2,572
13년 전 조회 1,682
13년 전 조회 644
13년 전 조회 2,361
13년 전 조회 2,105
13년 전 조회 793
13년 전 조회 746
13년 전 조회 3,232
13년 전 조회 1,651
13년 전 조회 671
13년 전 조회 528
13년 전 조회 8,164
13년 전 조회 4,661
13년 전 조회 7,862
13년 전 조회 808
13년 전 조회 1,447
13년 전 조회 1,860
13년 전 조회 1,263
13년 전 조회 2,770
13년 전 조회 975
13년 전 조회 1,189
13년 전 조회 679
13년 전 조회 1,210
13년 전 조회 1,392
13년 전 조회 1.3만
13년 전 조회 1,117
13년 전 조회 4,649
13년 전 조회 1,625
13년 전 조회 671
13년 전 조회 961
13년 전 조회 3,772
13년 전 조회 947
13년 전 조회 4,601
13년 전 조회 691
13년 전 조회 851
13년 전 조회 1,258
13년 전 조회 8,784
13년 전 조회 1,499
13년 전 조회 2,530
13년 전 조회 1,680
13년 전 조회 1,942
13년 전 조회 2,028
13년 전 조회 1,100
13년 전 조회 1,293
13년 전 조회 1.8만
13년 전 조회 2,353
13년 전 조회 4,382
13년 전 조회 1,709
13년 전 조회 2,131
13년 전 조회 2,185
13년 전 조회 1.6만
13년 전 조회 1,105
13년 전 조회 959
13년 전 조회 745
13년 전 조회 1,639
13년 전 조회 3,223
13년 전 조회 3,459
13년 전 조회 2,143
13년 전 조회 5,678
13년 전 조회 2,837
13년 전 조회 6,044
13년 전 조회 1,655
13년 전 조회 2.1만
13년 전 조회 927
13년 전 조회 1,425
13년 전 조회 1.7만
13년 전 조회 2,806
13년 전 조회 1,048
13년 전 조회 3,762
13년 전 조회 1,213
13년 전 조회 1,367
13년 전 조회 814
13년 전 조회 2,545
13년 전 조회 1,533
13년 전 조회 681
13년 전 조회 928
13년 전 조회 7,494
13년 전 조회 2,429
13년 전 조회 961
13년 전 조회 1,335
13년 전 조회 2,903
13년 전 조회 1,052
13년 전 조회 1.9만
13년 전 조회 2,965
13년 전 조회 2,679
13년 전 조회 4,846
13년 전 조회 1,962
🐛 버그신고