반응형
PHP $_SESSION 으로 timeout 설정
php.ini 에 설정하는 방법 대신에
코드상에서 제어할 수 있습니다.
php.ini 에 설정하게 되면 virtualhost 로 설정한 모든 php 사이트에 적용이 되기때문에,
코드에서 각각 시간을 설정하는 경우도 있습니다.
// 세션 사용전에 언제나 호출
session_start();
// 마지막 엑션이 10초 지났으면 로그아웃 시킴
if( isset($_SESSION['LAST_ACT']) && time() - $_SESSION['LAST_ACT'] > 10){
header('Location: /logout.php');
}
$_SESSION['LAST_ACT'] = time();
이 코드를 모든 페이지에 include 시키면 됩니다.
테스트 하느라 10초로 했는데, 저 부분을 수정하시면 됩니다. 초 단위니까 2시간으로 설정하려면 60*60*2
그리고 logout.php 에서는 세션을 날려줘야겠죠.
session_unset(); // 모든 세션 변수의 등록 해지
session_destroy(); // 세션 아이디의 삭제
이상입니다.
728x90
반응형
'php' 카테고리의 다른 글
[PHP] Login, ajax 로 구현하기 (0) | 2021.01.09 |
---|---|
[PHP] login, form submit으로 구현하기 (0) | 2021.01.09 |
[php] session timeout 설정하기 #php.ini 방법 (0) | 2020.12.23 |
[php] VS CODE 디버그 사용하기 #xDebug for PHP (xDebug3) (1) | 2020.12.20 |
[PHP] MySQL 한글 깨짐 해결 (0) | 2020.12.17 |
댓글