G

긴급질문 드립니다..답변좀 부탁드립니다

· 2013-04-26 (금) 00:09:43 · 1092 · 2
ngxmp를 이용하여 서버를 운영중입니다
서버가 한번 엎어져서 이차 저차해서 복구는했으나
ngxmp파일안에 index head tail php파일들이 저절로 사라지는 현상이 생기고..
백업본으로 하나하나 복구는했습니다.

문제는 현재 로그인이 안되는현상입니다.

로그인을하면

http://www.웹주소/bbs/login_check.php 페이지로 이동되며 아무것도 출력되지않습니다

뒤로가기하면 서버에 접속되고 그상태에서 새로고침을하면 로그인이되어있습니다.

하단은 login_check.php파일의 전문입니다.


<?
include_once("./_common.php");

$mb_id = $_POST[mb_id];
$mb_password = $_POST[mb_password];

if (!trim($mb_id) || !trim($mb_password))
alert("회원아이디나 패스워드가 공백이면 안됩니다.");

$mb = get_member($mb_id);

// 가입된 회원이 아니다. 패스워드가 틀리다. 라는 메세지를 따로 보여주지 않는 이유는
// 회원아이디를 입력해 보고 맞으면 또 패스워드를 입력해보는 경우를 방지하기 위해서입니다.
// 불법사용자의 경우 회원아이디가 틀린지, 패스워드가 틀린지를 알기까지는 많은 시간이 소요되기 때문입니다.
if (!$mb[mb_id] || (sql_password($mb_password) != $mb[mb_password]))
alert("가입된 회원이 아니거나 패스워드가 틀립니다.\\n\\n패스워드는 대소문자를 구분합니다.");

// 차단된 아이디인가?
if ($mb[mb_intercept_date] && $mb[mb_intercept_date] <= date("Ymd", $g4[server_time])) {
$date = preg_replace("/([0-9]{4})([0-9]{2})([0-9]{2})/", "\\1년 \\2월 \\3일", $mb[mb_intercept_date]);
alert("회원님의 아이디는 접근이 금지되어 있습니다.\\n\\n처리일 : $date");
}

// 탈퇴한 아이디인가?
if ($mb[mb_leave_date] && $mb[mb_leave_date] <= date("Ymd", $g4[server_time])) {
$date = preg_replace("/([0-9]{4})([0-9]{2})([0-9]{2})/", "\\1년 \\2월 \\3일", $mb[mb_leave_date]);
alert("탈퇴한 아이디이므로 접근하실 수 없습니다.\\n\\n탈퇴일 : $date");
}

if ($config[cf_use_email_certify] && !preg_match("/[1-9]/", $mb[mb_email_certify])){
$admin = get_admin('super');
alert("메일인증을 받으셔야 로그인 하실 수 있습니다.\\n\\n회원님의 메일주소는 $mb[mb_email] 입니다.", "$g4[bbs_path]/email_re_certify.php?id=$mb_id");
}

$member_skin_path = "$g4[path]/skin/member/$config[cf_member_skin]";
@include_once("$member_skin_path/login_check.skin.php");

// 회원아이디 세션 생성
set_session('ss_mb_id', $mb[mb_id]);
// FLASH XSS 공격에 대응하기 위하여 회원의 고유키를 생성해 놓는다. 관리자에서 검사함 - 110106
set_session('ss_mb_key', md5($mb[mb_datetime] . $_SERVER['REMOTE_ADDR'] . $_SERVER['HTTP_USER_AGENT']));


// 3.26
// 아이디 쿠키에 한달간 저장
if ($auto_login) {
// 3.27
// 자동로그인 ---------------------------
// 쿠키 한달간 저장
$key = md5($_SERVER[SERVER_ADDR] . $_SERVER[REMOTE_ADDR] . $_SERVER[HTTP_USER_AGENT] . $mb[mb_password]);
set_cookie('ck_mb_id', $mb[mb_id], 86400 * 31);
set_cookie('ck_auto', $key, 86400 * 31);
// 자동로그인 end ---------------------------
} else {
set_cookie('ck_mb_id', '', 0);
set_cookie('ck_auto', '', 0);
}

if ($url)
{
$link = urldecode($url);
// 2003-06-14 추가 (다른 변수들을 넘겨주기 위함)
if (preg_match("/\?/", $link))
$split= "&";
else
$split= "?";

// $_POST 배열변수에서 아래의 이름을 가지지 않은 것만 넘김
foreach($_POST as $key=>$value)
{
if ($key != "mb_id" && $key != "mb_password" && $key != "x" && $key != "y" && $key != "url")
{
$link .= "$split$key=$value";
$split = "&";
}
}
}
else
$link = $g4[path];

goto_url($link);
?>


읽어주셔서 감사드리며 도움에 손길 기다리겠습니다~
|

댓글 2개

ngxmp는 잘 모르지만..
login_check 백지상태에서 보이지 않는 에러를 확인하는게 먼저일 듯 합니다.
참고로,
아파치로 운영하는 저는 님과 똑같은 증상이 생겼을 때
ini_set('display_error','1'); 로 에러메세지를 확인 한 결과
common.lib.php 77행 set_session 함수가 문제를 일으킨 것을 알게되었습니다.
저의 경우는 서버를 엎으면서 php 버전 5.4를 사용하게 되면서 해당 함수가 문제가 되었네요.
2013-04-26 (금) 10:31:29
조언감사드립니다. 많은도움이 되었습니다~
댓글을 작성하시려면 로그인이 필요합니다.

그누4 질문답변

66,531건

그누보드4 관련 질문은 QA 로 이전됩니다. QA 그누보드4 바로가기 기존 게시물은 열람만 가능합니다.

+
제목 글쓴이 날짜 조회
13-04-26 조회 1,682
13-04-26 조회 1,093
13-04-25 조회 1,144
13-04-25 조회 2,142
13-04-25 조회 2,361
13-04-25 조회 1,070
13-04-25 조회 1,066
13-04-25 조회 1,121
13-04-25 조회 1,369
13-04-25 조회 940
13-04-25 조회 1,218
13-04-25 조회 1,128
13-04-25 조회 1,152
13-04-25 조회 1,807
13-04-25 조회 4,444
13-04-25 조회 1,072
13-04-25 조회 871
13-04-25 조회 1,137
13-04-25 조회 1,639
13-04-25 조회 992