폐쇄 사이트 gate 만들기 > 그누4 팁자료실

매출이 오르면 내리는 수수료! 지금 수수료센터에서 전자결제(PG)수수료 비교견적 신청해 보세요!

그누4 팁자료실

그누보드4와 관련된 팁을 여러분들과 함께 공유하세요.
나누면 즐거움이 커집니다.

폐쇄 사이트 gate 만들기 정보

폐쇄 사이트 gate 만들기

본문

gate.php를 만들고 이 곳을 통해서만 사이트 내 다른 페이지를 볼 수 있게 합니다.

우선 common.php에서 필요한 부분을 잘라서 gate.php를 만듭니다.

그리고 gate.php?key=abcd 로 접속해서 세션 값을 만들고
common.php에서 이 것을 체크하여 없으면 접근을 차단합니다.


gate.php

<?php
// 세션변수 생성
function set_session($session_name, $value) {
    session_register($session_name);
    // PHP 버전별 차이를 없애기 위한 방법
    $$session_name = $_SESSION["$session_name"] = $value;
}
function goto_url($url) {
    echo "<script language='JavaScript'> location.replace('$url'); </script>";
    exit;
}

/*******************************************************************************
** 공통 변수, 상수, 코드
*******************************************************************************/
error_reporting(E_ALL ^ E_NOTICE);

// 보안설정이나 프레임이 달라도 쿠키가 통하도록 설정
header('P3P: CP="ALL CURa ADMa DEVa TAIa OUR BUS IND PHY ONL UNI PUR FIN COM NAV INT DEM CNT STA POL HEA PRE LOC OTC"');

if (!isset($set_time_limit)) $set_time_limit = 0;
@set_time_limit($set_time_limit);

// 짧은 환경변수를 지원하지 않는다면
if (isset($HTTP_POST_VARS) && !isset($_POST)) {
        $_POST   = &$HTTP_POST_VARS;
        $_GET    = &$HTTP_GET_VARS;
        $_SERVER = &$HTTP_SERVER_VARS;
        $_COOKIE = &$HTTP_COOKIE_VARS;
        $_ENV    = &$HTTP_ENV_VARS;
        $_FILES  = &$HTTP_POST_FILES;

    if (!isset($_SESSION))
                $_SESSION = &$HTTP_SESSION_VARS;
}
//-------------------------------------------
// SESSION 설정
//-------------------------------------------
ini_set("session.use_trans_sid", 0);    // PHPSESSID를 자동으로 넘기지 않음
ini_set("url_rewriter.tags",""); // 링크에 PHPSESSID가 따라다니는것을 무력화함 (해뜰녘님께서 알려주셨습니다.)

session_save_path("data/session");

if (isset($SESSION_CACHE_LIMITER))
    @session_cache_limiter($SESSION_CACHE_LIMITER);
else
    @session_cache_limiter("no-cache, must-revalidate");

ini_set("session.cache_expire", 180); // 세션 캐쉬 보관시간 (분)
ini_set("session.gc_maxlifetime", 1440); // session data의 gabage collection 존재 기간을 지정 (초)

//session_set_cookie_params(0, "/");
//ini_set("session.cookie_domain", $g4['cookie_domain']);

@session_start();

if( $_SESSION['gate_on'] || $_GET['key'] == 'abcd') {
        set_session('gate_on', '1');
        goto_url("/index.php");

} else die('접근 방법이 올바르지 않습니다.');
?>

commo.php에

@session_start
(); 다음에 추가

if( empty( $_SESSION['gate_on'] )) {
        goto_url("/gate.php");
}

추천
0

댓글 0개

전체 3,313 |RSS
그누4 팁자료실 내용 검색

회원로그인

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