1

주제: 로그인이 되지 않습니다.

다양한 경우에 로그인이 안되겠지만 아래와 같은 경우도 로그인이
되지 않는 경우입니다.( WEB기반 테터툴즈 설치 프로그램을 테스트해보면서 잘사용하지 않는 서버에 테터툴즈를 설치하고 관리자로 로그인을 할려고 하니  되지 않더라구요.)


원인
php.ini의 설정중 아래라인
...
session.auto_start = 1
...
웹서버가 시작함에 따라 자동으로 세션을 시작하기 위해서 위와 같이
설정을 합니다. 보통 저부분은 거의 셋팅을 하지않고 코딩시
session_start(); 라고 입력해줍니다.

But 리눅스 배포판에 따라서 default로 1로 설정되는 경우가 있습니다.
보통 session.auto_start = 0 으로 되어있습니다.

그럼 왜 이설정이 문제를 일으키느냐?

테터툴즈의 세션시스템에 대한 이해가 필요합니다.
테터툴즈는 session_set_save_handler 라는 함수를 통해 세션관리를
DB가 수행합니다. default는 파일을 이용해서 세션을 관리하죠

auto_start=1 설정에 따라 이미 헤더부분에서 session_start가 되어
는데 다시 session_set_save_handler를 적용하고 session_start를
실행하면서 headers already sent by ... 오류를 발생하면
서 세션이 생성되지 않습니다.

저도 쪽지보내기 및 현재 접속자정보의 관리를 편리하게 하기위해서
파일대신 DB를 이용하여 세션을 관리합니다.
이런걸 어떻게 아느냐.. 한번 유사한 경험이 있어서 ^^ Google에서
신나게 검색을 한적이 있거든요.

php 설정에서 아래와 같이 셋팅하고 오류메세지를 보니까 알겠더라구요

error_reporting  =  E_ALL
display_errors    = ON

http://ghj.pe.kr/attach/1/1353257659.png

결론
웹호스팅 회사에 전화해서 php.ini설정을 아래와 같이 변경후
리스타트 해주세요 아니면 이글을 복사해서 담당자에게 메일로
보내줘도 되겠네요

php.ini
...
session.auto_start = 0
...

webthink (2006-04-24 14:09:14)에 의해 마지막으로 수정

2

답글: 로그인이 되지 않습니다.

webthink 작성:

다양한 경우에 로그인이 안되겠지만 아래와 같은 경우도 로그인이
되지 않는 경우입니다.( WEB기반 테터툴즈 설치 프로그램을 테스트해보면서 잘사용하지 않는 서버에 테터툴즈를 설치하고 관리자로 로그인을 할려고 하니  되지 않더라구요.)


원인
php.ini의 설정중 아래라인
...
session.auto_start = 1
...
웹서버가 시작함에 따라 자동으로 세션을 시작하기 위해서 위와 같이
설정을 합니다. 보통 저부분은 거의 셋팅을 하지않고 코딩시
session_start(); 라고 입력해줍니다.

But 리눅스 배포판에 따라서 default로 1로 설정되는 경우가 있습니다.
보통 session.auto_start = 0 으로 되어있습니다.

그럼 왜 이설정이 문제를 일으키느냐?

테터툴즈의 세션시스템에 대한 이해가 필요합니다.
테터툴즈는 session_set_save_handler 라는 함수를 통해 세션관리를
DB가 수행합니다. default는 파일을 이용해서 세션을 관리하죠

auto_start=1 설정에 따라 이미 헤더부분에서 session_start가 되어
는데 다시 session_set_save_handler를 적용하고 session_start를
실행하면서 headers already sent by ... 오류를 발생하면
서 세션이 생성되지 않습니다.

저도 쪽지보내기 및 현재 접속자정보의 관리를 편리하게 하기위해서
파일대신 DB를 이용하여 세션을 관리합니다.
이런걸 어떻게 아느냐.. 한번 유사한 경험이 있어서 ^^ Google에서
신나게 검색을 한적이 있거든요.

php 설정에서 아래와 같이 셋팅하고 오류메세지를 보니까 알겠더라구요

error_reporting  =  E_ALL
display_errors    = ON

http://ghj.pe.kr/attach/1/1353257659.png

결론
웹호스팅 회사에 전화해서 php.ini설정을 아래와 같이 변경후
리스타트 해주세요 아니면 이글을 복사해서 담당자에게 메일로
보내줘도 되겠네요

php.ini
...
session.auto_start = 0
...

네 해당 부분이 태터툴즈의 버그라는 말이 많았는데 ...
그렇지 않은 설정상의 문제였군요...
이 부분을 태터툴즈 쪽에서 개선하는 방법은 없는지요 ? 현행 SURI 체계를 크게 바꾸지 않는 범위에서 말이지요 smile

3

답글: 로그인이 되지 않습니다.

전에 저도 php.ini 설정을 손대지 않고 해결할려다가
포기했는데요

config.php 제일상단에 아래와 같이 코드를 추가하니까 동작이 되네요 >.<

if(intval(ini_get("session.auto_start")) == 1)
{
   @session_destroy();
   @ini_set('session.auto_start', '0');
}

다양한 경우에서의 테스트가 필요하겠지만 우선은 별다른 문제가
없어 보이네요.

세션자동시작일경우에는 현재의 세션을 날리고 세션을 자동시작
하지 않게 설정을 하니니까 로그인이 잘됩니다.

당연히 php.ini는 아래와 같이 되어 있구요.

session.auto_start = 1

문제가 해결되었으면 좋겠네요.

webthink (2006-04-24 15:10:21)에 의해 마지막으로 수정

4

답글: 로그인이 되지 않습니다.

webthink 작성:

전에 저도 php.ini 설정을 손대지 않고 해결할려다가
포기했는데요

config.php 제일상단에 아래와 같이 코드를 추가하니까 동작이 되네요 >.<

if(intval(ini_get("session.auto_start")) == 1)
{
   @session_destroy();
   @ini_set('session.auto_start', '0');
}

다양한 경우에서의 테스트가 필요하겠지만 우선은 별다른 문제가
없어 보이네요.

세션자동시작일경우에는 현재의 세션을 날리고 세션을 자동시작
하지 않게 설정을 하니니까 로그인이 잘됩니다.

당연히 php.ini는 아래와 같이 되어 있구요.

session.auto_start = 1

문제가 해결되었으면 좋겠네요.

다른 분들께서도 이 코드를 config.php에 적용하였을 때 아무런 문제가 없는지 확인해 주십시오.
만약 문제가 없다면 lib/config.php에 추가하여 항상 수행되도록 하겠습니다.
감사합니다.

PAPACHA (2006-04-24 15:16:41)에 의해 마지막으로 수정

5

답글: 로그인이 되지 않습니다.

게시판보니까 로그인이 안된다는 분들이 많네요.
저도 ghj.pe.kr multi.ghj.pe.kr setup.ghj.pe.kr 왔다갔다 하니까
한번씩 로그인이 안될때가 있더라구요.
안되면 그냥 안되던지 됐다 안됐다 하는게 버그잡기가 젤 힘들죠.
로그인부분은 특별관리 해야 될것 같은 느낌이드네요.

아래는 로그인부분 체크를 위해서 간략히 정리해 봤습니다.

1. $service['domain'] = "www.ghj.pe.kr"; 이라고 되어있고
ghj.pe.kr로 접속해서 로그인하면 로그인되지 않는다.

2. $service['domain'] = "ghj.pe.kr"; 이라고 되어있고
www.ghj.pe.kr로 접속해서 로그인하면 로그인되지 않는다.

3. 싱글사용자인데 config.php에
$service['type'] = ''; 되어있으면 로그인 화면조차 출력되지 않는다.

4. $service['type'] = 'single'; 로 되어 있으면 로그인이 된다.

5. 혹시 p3p?

microsoft 작성:

서로 다른 도메인을 포함하는 프레임 구조로 사이트를 IE6에서 열게 되면,
쿠키가 적용되지 않습니다.
이유는 마이크로 소프트에서 쿠키 정보의 남용을 막기 위해 p3p (Platform for Personal Preferences)
규약을 도입했기 때문입니다.
p3p (Platform for Personal Preferences) 규약은 W3C ( World wide Consortium )에서
만들어 졌습니다.

(마이크로 소프트 p3p 정책 http://msdn.microsoft.com/library/defau … olicy.asp)
(W3C - p3p 규약 http://www.w3.org/TR/2002/REC-P3P-20020416/ )

그래서 다른 주소지로 연결되는 프레임구조로(특히 포워딩 고정 연결시) 웹페이지가 열리게 되면,
쿠키가 적용되지 않게 됩니다.

config.php 아래 정보(허용하는 규약)도 입력해봤습니다.

@Header('P3P: CP="NOI CURa ADMa DEVa TAIa OUR DELa BUS IND PHY ONL UNI COM NAV INT DEM PRE"');

잘모르겠네요 로그인이 잘되는지... P3p 설정해놓으면 2번은 해결되겠네요 www에서 로그인 안되는 문제 위에 옵션들이
다무얼 뜻하는지는 잘 모르겠어요 누가 설명좀 해주세요^^

그밗에도 많은 경우가 있겠네요.

6. 제일 의심이 가는 녀석은 쿠키  TSSESSION_LOGINID

아직물증이 없어서.. 조사하면 다 나오겠죠^^

7. 혹시 config.php에 에 앞뒤로 공백이?
config.php 앞뒤로 공백이 있으면 로그인 실패..
세션자리에 이미 공백이 자리를 차지하고 있어서 세션이 생성안됨.

--앞--<?
$database['server'] = 'localhost';
$database['database'] = '설정에맞게';
$database['username'] = '설정에맞게';
$database['password'] = '설정에맞게';
$database['prefix'] = '설정에맞게';
$service['type'] = '설정에맞게';
$service['domain'] = '설정에맞게';
$service['path'] = '설정에맞게';
$service['skin'] = '설정에맞게';
?>--뒤--

webthink (2006-04-24 20:49:36)에 의해 마지막으로 수정

6

답글: 로그인이 되지 않습니다.

1. 2. 문제는 $_SERVER["HTTP_HOST"]와 $service['domain']을 비교해서 처리하면 해결될거 같군요.
3. 4. 는 정상적으로 설치가 됐다면 문제가 없지 않나요?;;

근데.. 태터센터에 시마랑이라는 분의 문제는 7번 문제네요.
config.php:15라고 되있군요. smile