세션 폴더를 변경하려면 어찌해야하나요?

세션 폴더를 변경하려면 어찌해야하나요?

QA

세션 폴더를 변경하려면 어찌해야하나요?

본문

일단 해본거는 /tmp/session 폴더를 만들고 ~/data 에 심볼릭 링크를 만들었습니다

소유자 그룹도 원본폴더와 심볼릭 링크 모두 apache 로 설정하고 로그인 테스트 해봤는데 로그인이 안됩니다.

두번째로 해본거는common.php 파일에서

session_save_path("/tmp/session");

이렇게 수정했습니다.
session 폴더 권한 777 줘도 안되고 selinux 꺼도 세션 파일이 생성안되네요.. 
어찌해야되나요?

이 질문에 댓글 쓰기 :

답변 3

[config.php] 106라인 쯤

define('G5_SESSION_PATH', G5_PATH.'/tmp/session');

 

[common.php] 189라인 쯤 

//ini_set('session.save_path', G5_SESSION_PATH); 

session_save_path(G5_SESSION_PATH);

 

그래도 혹시 안되면 //ini_set의 주석을 빼보세요. 

답변감사합니다.
[config.php]
define('G5_SESSION_PATH', '/tmp/session');
로 수정해줬더니 세션폴더가 바뀌는것 같습니다. G5_PATH 는 붙이나 빼나 관계없네요..
하지만 여기서 '/' 디렉토리가 서버디렉토리로 인식되는것같습니다. ( /data/session 하니 서버디렉토리/data/session 에 세션파일이 정상적으로 생성)
서버 디렉토리 밖으로 / 를 정의할 수 있으면 가능하겠는데..

php.ini 부분을 수정하시고 그누 config.php 도 변경하셔야할거에요

답변 감사합니다.
php-fpm 을 사용중이라 그런지몰라도 php.ini 의 session.save_path 를 수정해도 영향이 없네요..
/etc/php-fpm.d/www.conf 의 세션 디렉토리도 고쳐봤지만 그누보드에는 영향이 없었습니다..

잘 될지 모르겠지만

define('G5_SESSION_PATH', '/tmp/session');

define('G5_SESSION_PATH', $_SERVER['DOCUMENT_ROOT'].'/tmp/session');

로 바꿔보세요.

죄송합니다... 어제 뭔가 실수한것 같네요. config.php 에서 '/'  가 그냥 하드디스크 루트 디렉토리로 정의됩니다.
방금 /usr/share/nginx/gnuboard(그누보드 서버디렉토리)/data/session
 /usr/share/nginx/gnuboard(그누보드 서버디렉토리)/session
 /usr/share/nginx/session
 /session
 /tmp
를 하나씩 테스트해봤는데 전부 세션이 만들어졌습니다.
 /tmp/session 은 절대 안만들어지네요. 정확히 안만들어지는게 아니라 세션파일이 만들어지면 순식간에 삭제하는것 같습니다.
원래 목적이 다른 드라이브에 세션폴더를 지정하는거였으므로 목적은 달성했습니다..감사합니다.

답변을 작성하시기 전에 로그인 해주세요.
전체 60,957
QA 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT