관리자에서 bbs쓰기 > 그누보드5 팁자료실

🙏SIR UI/UX 디자인 의뢰(~7/31)

그누보드5 팁자료실

관리자에서 bbs쓰기 정보

관리자에서 bbs쓰기

본문

adm아래에 bbs폴더를 복붙해서 쓸경우 최신버전 업데이트도 문제고, 경로 관련 이슈가 있어서 만들어보았습니다.

 

.htaccess RewriteRule ^ - [L]아래에 2줄 추가합니다.



#### 그누보드5 rewrite BEGIN #####
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^ - [L]
RewriteRule ^adm/bbs/(.+\.php)$ /adm_bbs/adm_bbs_index.php?adm_bbs_file=$1  [QSA,L]
RewriteRule ^adm/(.+)/(.+)$ $1/$2  [QSA,L]

 

 

/adm_bbs/adm_bbs_index.php 파일을 만들어서 아래 내용을 넣습니다.



<?php
@extract($_GET);
@extract($_POST);

if(!function_exists('dd')){
    function dd($obj){
        echo "<pre>";
        print_r($obj);
        echo "</pre>";
        die();
    }
}

function get_g5_path(){

    $chroot = substr($_SERVER['SCRIPT_FILENAME'], 0, strpos($_SERVER['SCRIPT_FILENAME'], dirname(__FILE__)));

    $find_common_file = dirname(__FILE__);
    $common_file = 'common.php';
    for ($i=1;$i<=10;$i++){
        $chk = $find_common_file.'/'.$common_file;
        if(file_exists($chk)){
            $find_common_file = $chk;
            break;
        }
        $find_common_file = dirname($find_common_file);
    }
    if($find_common_file=='/'){
        die('common.php 파일을 찾을 수 없습니다.');
    }

    $result['path'] = str_replace('\\', '/', $chroot.dirname($find_common_file));

    $server_script_name = preg_replace('/\/+/', '/', str_replace('\\', '/', $_SERVER['SCRIPT_NAME']));
    $server_script_filename = preg_replace('/\/+/', '/', str_replace('\\', '/', $_SERVER['SCRIPT_FILENAME']));
    $tilde_remove = preg_replace('/^\/\~[^\/]+(.*)$/', '$1', $server_script_name);
    $document_root = str_replace($tilde_remove, '', $server_script_filename);
    $pattern = '/.*?' . preg_quote($document_root, '/') . '/i';
    $root = preg_replace($pattern, '', $result['path']);
    $port = ($_SERVER['SERVER_PORT'] == 80 || $_SERVER['SERVER_PORT'] == 443) ? '' : ':'.$_SERVER['SERVER_PORT'];
    $http = 'http' . ((isset($_SERVER['HTTPS']) && $_SERVER['HTTPS']=='on') ? 's' : '') . '://';
    $user = str_replace(preg_replace($pattern, '', $server_script_filename), '', $server_script_name);
    $host = isset($_SERVER['HTTP_HOST']) ? $_SERVER['HTTP_HOST'] : $_SERVER['SERVER_NAME'];
    if(isset($_SERVER['HTTP_HOST']) && preg_match('/:[0-9]+$/', $host))
        $host = preg_replace('/:[0-9]+$/', '', $host);
    $host = preg_replace("/[\<\>\'\"\\\'\\\"\%\=\(\)\/\^\*]/", '', $host);
    $result['url'] = $http.$host.$port.$user.$root;
    return $result;


}

$g5_path = get_g5_path();



define('G5_URL', $g5_path['url'].'/adm');
define('G5_BBS_URL', $g5_path['url'].'/adm/bbs');
define('G5_ORG_URL', $g5_path['url']);
define('G5_ORG_PATH', $g5_path['path']);
define('G5_IS_ADMIN', true);

include_once G5_ORG_PATH.'/common.php';

추천
0

댓글 1개

전체 2,657 |RSS
그누보드5 팁자료실 내용 검색

회원로그인

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