지

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

· 2012-11-29 (목) 14:36:00 · 11411 · 13
여기에 질문 올려 죄송합니다 ^^;;;;;

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

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

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


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에서는 그렇지만.. 모바일에선 감수할수 있지 않을까요? 타인의 손에 넘어가면 위험할수도 있지만 본인의 편의를 위해 사용하는거라.. 감수할 부분이지 않을까 싶네요...
2012-12-03 (월) 15:12:08
모바일에서는 자동로그인을 강제로 on 되도록 설정하시면 됩니다.
그렇게 해도 안돼요~ ^^
모바일 뿐만 아니라 일반웹에서도 자동로긴은 금방 풀려버려요~
그누보드에서 가장 아쉬운게 아이디 패스워드 기억하는 방법과 자동로긴이 잘 안된다는거..
모바일에서 로컬 스토리지를 이용하면 손쉽게 아이디 비번 저장을 만들 수 있습니다.
모바일에 익숙해지시면 php 세션을 가지고는 불가능한 경우는 아주 많이 나옵니다.
그리고 모바일웹에서 하이브리드나 j쿼리 모바일 등의 프레임웍을 사용해야 할때도 벽에 부딪치므로
로그인 관련해서는 jquery나 자바스크립트 + ajax + php를 이용해서 방법을 하나 정도는 만들어 두시는게 좋은데 개인적인 생각입니다.~

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

프로그램

8,188건
+
제목 글쓴이 날짜 조회
13-02-18 조회 3,579
13-02-15 조회 4,106
13-02-12 조회 5,875
13-02-04 조회 4,119
13-01-30 조회 4,995
13-01-25 조회 3,768
13-01-18 조회 3,806
13-01-18 조회 5,679
13-01-18 조회 6,179
13-01-18 조회 3,814
13-01-18 조회 4,904
13-01-17 조회 4,275
13-01-17 조회 3,639
13-01-17 조회 3,675
13-01-17 조회 4,010
12-12-31 조회 3,648
12-12-28 조회 4,952
12-12-28 조회 6,015
12-12-28 조회 3,451
12-12-27 조회 3,764
12-12-27 조회 4,345
12-12-20 조회 5,375
12-12-18 조회 9,181
12-12-14 조회 4,927
12-12-10 조회 3,766
12-12-10 조회 3,173
12-12-01 조회 4,027
12-11-25 조회 7,372
12-11-22 조회 6,028
12-11-20 조회 2.4만
12-11-19 조회 4,362
12-11-13 조회 3,928
12-11-12 조회 3,919
12-10-23 조회 4,863
12-09-25 조회 4,476
12-09-05 조회 7,099
12-09-04 조회 7,536
12-09-04 조회 3,458
12-08-30 조회 3,516
12-08-30 조회 3,657
12-08-29 조회 3,399
12-08-29 조회 3,246
12-08-26 조회 3,521
12-08-18 조회 3,841
12-08-17 조회 4,150
12-08-16 조회 3,659
12-08-14 조회 3,343
12-08-13 조회 5,632
12-08-13 조회 3,489
12-08-11 조회 3,786
12-08-10 조회 3,321
12-08-07 조회 4,140
12-08-07 조회 3,372
12-08-06 조회 3,603
12-07-31 조회 3,211
12-07-30 조회 3,523
12-07-30 조회 3,162
12-07-29 조회 3,343
12-07-29 조회 3,112
12-07-27 조회 3,155
12-07-21 조회 3,024
12-07-19 조회 3,252
12-07-19 조회 2,945
12-07-17 조회 3,444
12-07-17 조회 3,134
12-07-17 조회 3,992
12-07-16 조회 3,070
12-07-15 조회 3,162
12-07-14 조회 3,292
12-07-13 조회 8,341
12-07-11 조회 3,435
12-07-10 조회 1만
12-07-09 조회 3,210
12-07-08 조회 4,444
12-07-06 조회 3,690
12-07-05 조회 3,965
12-07-05 조회 3,377
12-07-05 조회 3,336
12-07-03 조회 3,255
12-07-03 조회 3,203
12-07-02 조회 3,248
12-07-02 조회 2,992
12-06-30 조회 3,471
12-06-26 조회 3,182
12-06-22 조회 3,221
12-06-22 조회 3,165
12-06-21 조회 3,155
12-06-21 조회 3,380
12-06-20 조회 3,546
12-06-20 조회 3,208
12-06-20 조회 3,124
12-06-18 조회 4,002
12-06-17 조회 3,446
12-06-15 조회 3,055
12-06-14 조회 2,988
12-06-13 조회 3,544
12-06-11 조회 3,368
12-06-08 조회 3,385
12-06-06 조회 3,243
12-06-06 조회 3,622