세션타임아웃기능
PHP에서는 세션정보의 유효기간을 php.ini 에서 lifetime 부분을 설정하게 합니다.
그러나 소스를 출시할때 소스셋팅에서 php.ini파일설정과 같은 공정을 하나 거쳐야 하며, 수정을 위해서는 값변경후 서비스재시작해야 하는 등 불편한 점이 있습니다.
그래서 코드적으로 유효기간을 설정하는 방법을 하나 서술해드립니다.
[code]
function idle($time)
{
if (!isset($_SESSION['timeout_idle'])) {
$_SESSION['timeout_idle'] = time() + $time; // 세션'timeout_idle' 값이 비었으면 현 시점을 기준으로 $time값만큼을 유효기간으로 설정
} else {
if ($_SESSION['timeout_idle'] < time()) {
return true; // session 유효기간이 만료
} else {
$_SESSION['timeout_idle'] = time() + $time; // 새 요청이 올때마다 현 시점을 기준으로 유효기간을 업데이트
}
}
return false; // 세션기간 유효
}
/* 이용방법 아래의 코드부분을 사이트내 보안로직의 적당한 곳에서 사용*/
$idle = idle(10 * 60);//10분간 세션정보 유효
if ($idle === true) { //만일 세션정보유효기간이 만료되었으면
print "세션타입 아웃되었습니다!";
exit;
}
[/code]
위와 같은 코드를 사용하면 세션유효기간을 임의의로 설정하면서도 서비스를 중지하지 않아도 되며
php.ini 파일을 별도로 편집하지 않아도 됩니다.
게시글 목록
| 번호 | 제목 |
|---|---|
| 16181 | |
| 16175 | |
| 16173 |
기타
일반적인 미디어쿼리
4
|
| 16172 |
PHP
특정 ip에서만 모바일 사용
|
| 16170 | |
| 16168 |
PHP
하루전 일주일전 한달전
1
|
| 16167 |
JavaScript
어제날짜, 내일날짜 구하기
|
| 16161 |
JavaScript
날짜형식 체크
2
|
| 16152 | |
| 16145 | |
| 16133 | |
| 16131 | |
| 16128 | |
| 16122 | |
| 16117 |
PHP
php async
3
|
| 16102 | |
| 16099 | |
| 16095 | |
| 16089 |
JavaScript
스택(stack)을 이용한 사칙연산(+ - * /) 계산기
4
|
| 16088 | |
| 16077 |
JavaScript
다양한 카운트다운 소스
6
|
| 16065 |
PHP
간단한 PHP 프레임워크
10
|
| 16060 |
jQuery
atj.js
3
|
| 16055 | |
| 16052 |
JavaScript
네이버 지도 api v3 주소->좌표 변환해서 출력하는 예제
5
|
| 16051 | |
| 16050 | |
| 16046 | |
| 16039 | |
| 16027 |
댓글 작성
댓글을 작성하시려면 로그인이 필요합니다.
로그인하기