웹모아
웹모아[손님] 검색   로그인 / 회원가입    


 
환경설정
 


브라우져를 종료해도 세션이 그대로 살아있어요
  2007-07-15 22:16:01 댓글:(0)   조회:2456



php.ini에서도 
session.lifetime = 0 
session.cookie_lifetime = 0 
session.gc_maxlifetime = 0 


이렇게 했거든요.. 
근데 브라우져를 종료하고 나서 
다시 서비스에 접속하면 세션 값이 그대로 살아있어서 
자동으로 로그인이 되어버립니다.. 
어떻게 하면 되죠? 

===============================================================
A:
원인은 클라이언트의 쿠키가 제때 제거되지 않고, 서버의 활동이 적은 경우가 
더해저 생기는 문제입니다. 

서버는 세션이 시작되면 - 보통 session_start()호출을 말합니다 - 가비지(쓸모없어 보이는 세션)를 
정리하는데 session_start()를 약100번 호출해야 한번 정리합니다. 
그러니 서버이용이 적은 경우 가비지가 제때 정리안되 유효시간이 지난 세션이 못 지워지고 
그대로 사용됩니다. 

이때 필요한게 한가지 더 있는데 $_COOKIE["PHPSESSID"] 값이 클라이언트에 있어야 합니다. 
정상이라면 부라우저 종료시 사라저야 하는 쿠키값이 계속남아 있는 오류죠. 

이 오류는 어디서 잘못인지 모르겠더군요. 익스의 버그인지 아니면 php, apache의 버그인지.. 


관련있는 설정들은 
session.cookie_lifetime = 0 쿠키의 유효시간 설정으로 0이면 브라우저 종료시 삭제입니다. 
그러나 이게 안되서 문제가 발생하는 것이지요. 

session.gc_probability = 1 
session.gc_divisor    = 100 
이런경우 1/100 의 확률로 가비지를 정리합니다. 
위에서 말한 100번 호출해야 한번정리한다는 건 이설정때문입니다. 
서버이용자가 적어 가비지가 제때 호출되지 못하는경우 이확률을 높여 해결이 가능하지요. 

session.gc_maxlifetime = 1440 
이건 가비지 호출시 1440초 동안 쓰이지 않은 세션을 정리한다는 것으로 
0으로 하면 안되겠죠. 


session.lifetime = 0  ㅡ..ㅡ 이런 설정값은 제가 알기론 없습니다. 
버전이 몇인지 몰라도 php4에서도 없었던듯 한데...



 댓글 (0)


환경설정
페이지: 1 / 2   


   PHP.INI에서의 세션 관련 설정4306
   [PHP] $_SERVER3472
   php 에서 세션시간설정1343
   업로드 용량과 관련한 php.ini 파일 설정1294
   mbstring - PHP 확장모듈을 추가하는 방법1340
     [RE] mbstring - PHP 확장모듈을 추가1464
   타도메인간 쿠키 공유하기1714
   home 데이타 백업 스크립트1288
   cron 이용 일정시간마다 php문실행2107
   cron, crontab, PHP 소스 자동실행, 1576
   crontab 에서 php 파일 실행이 가능한지요?1406
   crontab php 스크립트 실행문제입니다.(1) 1292
   2차 도메인과의 세션고유1518
   POST로 값을 넘길때, 만료된 페이지입니다 문제의(홈마스타)3100
   세션(로그인)시간 무한대로 늘리기 초간단 초보용(홈마스타)(2) 1400
   php mysql 세션 관리(홈마스타)2649
   세션을 DB로 관리하기 + 쪽지 확인하기(홈마스타)(1) 1599
브라우져를 종료해도 세션이 그대로 살아있어요(홈마스타)2457
   PHP에서 세션 사용하기(홈마스타)1387
   [설치/설정] PHP 파일업로드시 일정용량 이상 업(홈마스타)1262
   php.ini 값 설정가능한 범위 알아보기(홈마스타)1530
   PHP 슈퍼전역변수 들의 종류(홈마스타)19431
   쿠키공유를 위한 헤드값(홈마스타)1403
   php.ini 설정하기(홈마스타)1414
   php.ini (V4.2.3) - III(홈마스타)1387
   php.ini (V4.2.3) - II(홈마스타)1428
   환경을 실행중에 임시로 바꾸기(홈마스타)1283
   php.ini (V4.2.3)(홈마스타)1479
   error_reporting(홈마스타)1782
   경과만료 페이지 없애기(홈마스타)1624
≪ [1]  [2]   ≫

복수단어 검색은 공백(space)로 구분해 주세요.



 
최근 글
[손님]
9
10
153
162
322
515
1287
468
541
298
459
4057
977
1082
1320
 
인기 글
[손님]
10379
6544
[홈마스타] input 버턴의 모양
6727
5456
5066
6730
5706
6973
4860
4711
4783
4971
5674
[홈마스타] [RE] input type=\\
6798
6982