MySQL(MariaDB)을 관리하기 위해서 PhpMyAdmin(이하 PMA)에 로그인해 사용하다 보면 30분 후 ‘최근 1440초 동안 아무 동작이 없어 로그아웃 되었습니다. 다시 로그인해주세요.’ 라는 메시지와 함께 자동으로 로그아웃 되는 것을 볼 수 있는데요.
PMA는 쿠키를 기반으로 세션 시간을 정해 로그인 후 아무런 활동이 없으면 보안상 자동으로 로그아웃 되는 구조를 취하고 있는데 학습을 위해서 PMA를 사용하는 경우 다른 페이지를 보느라 PMA를 사용하지 않을 수 있는데 자주 로그아웃 되는게 불편하다면 다음과 같은 방법으로 쿠키 유효기간을 늘릴 수 있습니다.
목차
PhpMyAdmin 로그아웃 시간 변경하기
![phpmyadmin setup cookie lifetime 01 1 Phpmyadmin Setup Cookie Lifetime 01](https://extrememanual.net/wp-content/uploads/2018/12/phpmyadmin_setup_cookie_lifetime_01.png)
PMA에 접속해 로그인 한 다음 상단 메뉴의 설정 > 특징 > 일반에서 ‘로그인 쿠키 유효시간’을 수정합니다. 초 단위로 입력하며 3600초는 60분입니다.
php.ini 세션 시간 수정
![phpmyadmin setup cookie lifetime 02 2 Phpmyadmin Setup Cookie Lifetime 02](https://extrememanual.net/wp-content/uploads/2018/12/phpmyadmin_setup_cookie_lifetime_02.png)
PMA에서 높은 값으로 유효시간을 설정했더라도 php에 의해 구동되기 때문에 php 또한 세션 시간을 크게 잡아줘야 하며 php의 기본 세션 시간은 1440초로 PMA의 기본값과 같습니다.
PMA 메인 페이지를 보면 session.gc_maxlifetime
이 쿠키 유효기간보다 작다는 것을 힌트로 알려주고 있습니다.
session.gc_maxlifetime = 1440
php-fpm 방식을 APT 패키지로 설치한 경우 /etc/php/버전/fpm/php.ini
를 에디터로 열어 session.gc_maxlifetime
항목을 수정하면 되며(기본값 1440) 아파치 같은 경우 기본적으로 /etc/php.ini
에 위치하고 있습니다.
만일 php.ini 위치를 잘 모르겠다면 아래 글을 참고하세요.
세션 시간을 늘리면 편의성은 높아지는 대신 보안등에 문제가 생길 수 있으니 서비스를 하는 서버라면 너무 높은 값으로 수정하는 것은 지양해야 되겠습니다.