phpMyAdmin 접속 시 세션 저장 경로 및 퍼미션 오류 해결 방법
페이지 정보

본문
그누보드 운영 환경에서 phpMyAdmin 접속 시 발생하는 'Cannot start session without errors' 에러의 원인인 세션 저장 경로와 퍼미션 문제를 해결하여 정상적으로 접속할 수 있도록 돕습니다.
PHP 환경에서 세션 저장 경로(session.save_path) 확인 방법
현재 PHP 환경에서 지정된 세션 저장 경로를 파악하려면 phpinfo() 함수를 활용하여 설정 값을 확인할 수 있습니다.
확인 절차
- 메모장 등의 편집기를 열고
<? phpinfo();?>코드를 입력한 뒤, 파일을phpinfo.php등의 이름으로 서버에 저장하고 업로드합니다. - 웹 브라우저를 통해 해당
phpinfo.php파일에 접속합니다. - 페이지 내에서 검색 기능(예:
Ctrl + F)을 사용하여session.save_path항목을 찾습니다. - 출력된 설정 값을 통해 현재 지정된 경로(예:
/var/lib/php/session등)를 확인합니다.
php.ini 세션 저장 경로 및 퍼미션 수정 방법
phpMyAdmin 접속 시 "Cannot start session without errors" 오류가 발생할 때, 서버의 php.ini 파일에서 세션 저장 경로를 확인하고 수정하거나 폴더 권한을 변경하여 웹서버가 세션 파일을 정상적으로 읽고 쓸 수 있도록 조치할 수 있습니다.
1. 세션 저장 경로 확인
phpinfo()페이지를 통해 현재 설정된session.save_path값을 확인합니다. 일반적으로/var/lib/php/session등으로 지정되어 있습니다.
2. php.ini 설정 변경
php.ini파일에서 세션 저장 경로(session.save_path)를 올바른 경로(예:/tmp)로 지정하거나 변경합니다.- 설정 예시:
session.save_path = "/tmp"
3. 세션 저장 경로 퍼미션 수정
- 세션 파일이 저장되는 디렉토리(예:
/var/lib/php/session또는/tmp)에 쓰기 및 실행 권한이 부족하면 세션 시작 오류가 발생할 수 있습니다. - SSH를 통해 서버에 접속한 뒤 아래 명령어로 퍼미션을 변경할 수 있습니다.
chmod 770 /var/lib/php/session - 보안 주의사항:
chmod 777은 모든 사용자에게 권한을 부여하므로 보안상 매우 취약합니다. 운영 환경에서는 웹 서버 실행 계정(예:apache,www-data)에 맞춰 소유권을 변경(chown)하고, 퍼미션을755또는770으로 제한하는 방식을 권장합니다.
4. 웹서버 재시작
- 설정을 변경한 후에는 아파치 웹서버를 재시작하여 변경된 설정이 적용되도록 합니다.
또는./bin/apachectl restartservice httpd restart
아파치 웹서버 재시작 명령어
php.ini 설정 또는 세션 저장 경로 권한을 변경한 뒤, 변경 사항을 웹서버에 즉시 반영하기 위해 아파치 웹서버를 재시작하는 명령어는 다음과 같습니다.
재시작 명령어
- 방법 1 (service 명령어 사용):
service httpd restart - 방법 2 (apachectl 명령어 사용):
./bin/apachectl restart
SSH로 서버에 접속한 후 위 명령어를 실행하여 서비스를 재시작하고 phpMyAdmin 접속 오류가 해소되는지 확인하십시오.
네, 서버 설정을 변경하기 전 브라우저의 쿠키를 삭제하여 문제를 해결할 수 있습니다. phpMyAdmin 접속 시 발생하는 Cannot start session without errors 에러는 서버 측 세션 저장 경로의 권한 문제뿐만 아니라, 클라이언트 브라우저에 저장된 기존 쿠키 데이터와의 충돌로 인해 발생할 수도 있습니다.
브라우저 쿠키 삭제 방법
- 크롬(Chrome): 설정 > 개인정보 및 보안 > 인터넷 사용 기록 삭제 > '쿠키 및 기타 사이트 데이터'를 선택하여 삭제합니다.
- 인터넷 익스플로러(IE): 도구(톱니바퀴 아이콘) > 인터넷 옵션 > 일반 탭의 검색 기록에서 '삭제' 버튼을 클릭한 후 '쿠키 및 웹 사이트 데이터'를 체크하여 삭제합니다.
쿠키를 삭제한 후에도 문제가 지속된다면, 서버 측의 session.save_path 경로 설정 및 해당 디렉토리의 권한(퍼미션)을 확인해야 합니다.
상황별 판단 및 대응 가이드
| 내 상황 | 우선할 판단 | 다음 행동 |
|---|---|---|
| phpMyAdmin 접속 시 "Cannot start session without errors" 에러 발생 | 클라이언트 측 브라우저 쿠키 충돌 여부 확인 | 브라우저 쿠키 삭제 후 재접속 시도 및 지속 시 서버 설정 확인 |
| 브라우저 쿠키를 삭제해도 세션 오류가 계속 발생함 | PHP 세션 저장 경로(session.save_path) 및 폴더 권한 확인 | phpinfo()로 경로 확인 후 php.ini 수정 또는 chmod 777 퍼미션 변경 |
| 서버 설정을 변경하거나 퍼미션을 수정한 상태 | 변경된 설정의 웹서버 즉시 반영 | SSH 접속 후 아파치 웹서버 재시작 (service httpd restart 등) 실행 |
실전 FAQ
Q. 브라우저 쿠키를 삭제하고 서버 설정을 변경했는데도 세션 에러가 지속되면 어떻게 해야 하나요?
- 예외 및 대안: PHP-FPM을 사용하는 환경에서는
php.ini수정만으로는 세션 경로가 반영되지 않을 수 있습니다. 이 경우/etc/php-fpm.d/www.conf파일 내의php_value[session.save_path]설정 값을 함께 변경해야 정상적으로 적용됩니다.
Q. 세션 저장 폴더의 퍼미션을 777로 변경할 때 주의할 점은 무엇인가요?
- 막히는 지점 및 주의사항:
chmod 777명령어는 모든 사용자에게 읽기·쓰기·실행 권한을 부여하므로 문제 해결에는 빠르지만 보안상 취약할 수 있습니다. 운영 환경에서는 웹서버 실행 계정에 맞춰 소유권을 조정하거나 권한 범위를 제한하는 방식을 검토해야 합니다.
함께 보면 좋은 글
참고자료
기타 참고자료
- webdir.tistory.com — WEBDIR :: CentOS phpMyAdmin "Cannot start session without errors"
- m.blog.naver.com — phpMyAdmin - Error : 네이버 블로그
- stackoverflow.com — php - Cannot start session without errors in phpMyAdmin - Stack Overflow
- eond.com — Mysql 설치후 phpMyadmin 접속할경우 아래와 같은 메시지가 보일때 조치법이 몇가지 있다.… — EOND 스레드
- cnisoft.tistory.com — phpmyadmin session 에러
- m.blog.naver.com — php-fpm 설정 : 네이버 블로그
- rhymix.org — Rhymix - 설치 시 세션지원 ERROR 문제
- sir.kr — phpmyadmin 접속에러 해결부탁드립니다 - SIR - 개발자 커뮤니티
- 이전글Apache 웹 서버 기본 인코딩 설정 변경 및 .htaccess 활용 방법 26.09.30
- 다음글웹 호스팅 서버 디스크 용량 초과(Disk quota exceeded) 에러 원인과 해결 방법 26.09.30
댓글목록
등록된 댓글이 없습니다.