diff --git a/config.php b/config.php index 952a284ea..6437041b7 100644 --- a/config.php +++ b/config.php @@ -5,7 +5,7 @@ ********************/ define('G5_VERSION', '그누보드5'); -define('G5_GNUBOARD_VER', '5.4.1.7'); +define('G5_GNUBOARD_VER', '5.4.1.8'); // 이 상수가 정의되지 않으면 각각의 개별 페이지는 별도로 실행될 수 없음 define('_GNUBOARD_', true); diff --git a/lib/common.lib.php b/lib/common.lib.php index 2db6f7b28..1e14e6afc 100644 --- a/lib/common.lib.php +++ b/lib/common.lib.php @@ -116,6 +116,17 @@ function goto_url($url) // 세션변수 생성 function set_session($session_name, $value) { + static $check_cookie = null; + + if( $check_cookie === null ){ + $cookie_session_name = session_name(); + if( ! ($cookie_session_name && isset($_COOKIE[$cookie_session_name]) && $_COOKIE[$cookie_session_name]) && ! headers_sent() ){ + @session_regenerate_id(false); + } + + $check_cookie = 1; + } + if (PHP_VERSION < '5.3.0') session_register($session_name); // PHP 버전별 차이를 없애기 위한 방법