그누보드 [G5] 짧은주소 사용기
페이지 정보
본문
설치과정에 대해 정리해봤습니다.
1. https://sir.kr/g5_tip/4022 에서 본인의 서버 환경에 맞는 버전을 다운 받습니다.
2. 업로드
그누보드5 / lib / shorturl.lib.php
그누보드5 / .htaccess
3. 그누보드5 & 아미나빌더 / bbs / page.php
3-1. 그누보드 5
bbs / page.php 가 순정 그누보드에는 없는 파일이므로 업로드
3-2. 아미나 빌더
아미나 빌더는 bbs/page.php 가 존재하므로 덮었쓰지말고 .htaccess 와 lib/shorturl.lib.php 를 각각 수정
4. 그누보드5 & 아미나빌더 / .htaccess 관련 FAQ
4-1. 500 에러 발생할 경우
Options +FollowSymLinks
를 아래와 같이 변경
#Options +FollowSymLinks
4-2. 그누보드설치경로가 / 가 아닌 폴더명/그누보드5 일때
※ 게시판 접속하면 500에러 떠서 설정을 실패해서 최상단에서 사용중 ※
RewriteBase /
를 아래과 같이 변경
RewriteBase /폴더/
RewriteCond %{REQUEST_URI} ^/archive/ [NC]
를 아래와 같이 변경
RewriteCond %{REQUEST_URI} ^/폴더명/archive/ [NC]
4-3. /archive/free 를 /free 로 사용하고 싶을때
RewriteRule ^ - [E=G5_SHORTURL_BOARD_ONLY:false]
를 아래와 같이 변경
RewriteRule ^ - [E=G5_SHORTURL_BOARD_ONLY:true]
4-4. 아미나빌더 / .htaccess 104라인
pid 를 hid 로 변경
5. 그누보드5 & 아미나빌더 / lib / common.lib.php ... 96줄
$url = str_replace("&", "&", $url);
를 다음과 같이 변경
//$url = str_replace("&", "&", $url);
$url = shorturl(str_replace("&", "&", $url)); // shorturl.lib.php 짧은주소
5-1. 그누보드5~5.2 & 아미나빌더 / lib / common.lib.php ... 157줄
if (!$msg) $msg = '올바른 방법으로 이용해 주십시오.';
를 다음과 같이 변경 ( 내용 추가 )
if (!$msg) $msg = '올바른 방법으로 이용해 주십시오.';
if ($url) $url = shorturl($url); // shorturl.lib.php 짧은주소
5-2. 그누보드5.3 / lib / common.lib.php ... 156줄
$msg = $msg ? strip_tags($msg, '<br>') : '올바른 방법으로 이용해 주십시오.';
를 다음과 같이 변경 ( 내용 추가 )
$msg = $msg ? strip_tags($msg, '<br>') : '올바른 방법으로 이용해 주십시오.';
if ($url) $url = shorturl($url); // shorturl.lib.php 짧은주소
6. 그누보드5 & 아미나빌더 / lib / common.lib.php ... 187줄
if (!$msg) {
$msg = '올바른 방법으로 이용해 주십시오.';
alert($msg);
}
를 다음과 같이 변경 ( 내용 추가 )
if (!$msg) {
$msg = '올바른 방법으로 이용해 주십시오.';
alert($msg);
}
$url1 = shorturl($url1); // shorturl.lib.php 짧은주소
$url2 = shorturl($url2); // shorturl.lib.php 짧은주소
$url3 = shorturl($url3); // shorturl.lib.php 짧은주소
7. 그누보드5 & 아미나빌더 / lib / common.lib.php ... 2513줄
$buffer = preg_replace('#(</head>[^<]*<body[^>]*>)#', "$javascript{$nl}$1", $buffer);
return $buffer;
를 아래와 같이 변경
$buffer = preg_replace('#(</head>[^<]*<body[^>]*>)#', "$javascript{$nl}$1", $buffer);
return shorturl($buffer, true); // shorturl.lib.php 짧은주소
//return $buffer;
8. 그누보드5 & 아미나빌더 / lib / common.lib.php 페이지 제일 하단에 추가
?>
를 아래와 같이 변경 ( 내용 추가 )
include_once(G5_LIB_PATH.'/shorturl.lib.php'); // shorturl.lib.php 짧은주소
?>
9. 아미나빌더 / lib / shorturl.lib.php 241 라인
pid 를 hid 로 변경
10. 그누보드5 & 아미나빌더 / bbs / view.php
추천 / 비추천 / 스크랩의 오류가 발생하는 경우 아래의 내용을 수정
// 스크랩 링크
$scrap_href = './scrap_popin.php?bo_table='.$bo_table.'&wr_id='.$wr_id;
// 추천 링크
if ($board['bo_use_good'])
$good_href = './good.php?bo_table='.$bo_table.'&wr_id='.$wr_id.'&good=good';
// 비추천 링크
if ($board['bo_use_nogood'])
$nogood_href = './good.php?bo_table='.$bo_table.'&wr_id='.$wr_id.'&good=nogood';
를 아래와 같이 변경
// 스크랩 링크
$scrap_href = G5_BBS_URL.'/scrap_popin.php?bo_table='.$bo_table.'&wr_id='.$wr_id;
// 추천 링크
if ($board['bo_use_good'])
$good_href = G5_BBS_URL.'/good.php?bo_table='.$bo_table.'&wr_id='.$wr_id.'&good=good';
// 비추천 링크
if ($board['bo_use_nogood'])
$nogood_href = G5_BBS_URL.'/good.php?bo_table='.$bo_table.'&wr_id='.$wr_id.'&good=nogood';
11. 그누보드5 & 아미나빌더 / bbs / board.php ... 10줄
if (isset($write['wr_is_comment']) && $write['wr_is_comment']) {
goto_url('./board.php?bo_table='.$bo_table.'&wr_id='.$write['wr_parent'].'#c_'.$wr_id);
}
를 아래와 같이 변경
if (isset($write['wr_is_comment']) && $write['wr_is_comment']) {
goto_url(G5_BBS_URL.'/board.php?bo_table='.$bo_table.'&wr_id='.$write['wr_parent'].'#c_'.$wr_id); // 짧은주소
}
12. 그누보드 5.3.x 에서 비밀글 클릭시 비밀번호 입력창에 오류가 발생할때는 아래의 내용 수정
그누보드5 / bbs / board.php ... 110줄
if (!get_session($ss_name))
goto_url('./password.php?w=s&bo_table='.$bo_table.'&wr_id='.$wr_id.$qstr);
를 아래와 같이 변경
if (!get_session($ss_name))
goto_url(G5_BBS_URL.'/password.php?w=s&bo_table='.$bo_table.'&wr_id='.$wr_id.$qstr); // 짧은주소
13. php 7.x 에서 관리자 페이지 접속하면
_CONTENTS_DIR - assumed 'G5_CONTENTS_DIR' (this will throw an Error in a future version of PHP) in /home/happyjung/www/lib/shorturl.lib.php on line 78
이런 에러가 뜰때
<?php
if (!defined('_GNUBOARD_')) exit;
아래에 내용을 추가
define('G5_BBS_DIR', '');
define('G5_SHOP_DIR', '');
define('G5_CONTENTS_DIR', '');
define('G5_ADMIN_DIR', '');
댓글목록
day2company님의 댓글
day2company 쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 작성일
정리한 자료를 보고 수정중입니다만..
common_lib.php 파일에서
3-2. 그누보드5 / lib / common.lib.php ... 157줄
if (!$msg) $msg = '올바른 방법으로 이용해 주십시오.';
를 다음과 같이 변경
if (!$msg) $msg = '올바른 방법으로 이용해 주십시오.';
if ($url) $url = shorturl($url); // shorturl.lib.php 짧은주소
요부분만 없습니다.
또한 메뉴얼을보면 5.3.1만 해당하는 156줄만 수정해야하는건지 전부다 해야하는건지를 모르겠습니다.
그누보드 5.3.1 사용중입니다.
ps. nginx 를 사용중입니다. 게시물 삭제 글쓰기시 404에러가 나고 있구요 ㅠㅠ xx.com/freeboard 로 하고싶은데 나와있는 수정방법은 아파치 기준만 있습니다. 답변해주실수 있으실까요? 그럼 좋은하루되세요~~~
이지광님의 댓글
이지광 쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 작성일
안녕하세요.
다 따라했는데.. 글쓰기와 목록보기시 오류가 발생해서 질문드립니다.
그누보드 5.2.9.5 버젼을 사용중이고요.. 테마는 아미나테마를 사용하고 잇습니다.
다른건 다 적용이 되어서 문제없는데..
도메인/bbs/write.php?bo_table=board1 <---- 이렇게 나와야 정상인데
도메인/write.php?bo_table=board1 이렇게 나와서 오류가 발생합니다.
그리고 글을 보는 과정에서 목록이나 다른걸 누르면...
도메인/board.php?bo_table=mt_board1&page= <--- 이렇게 나와야 정상인데
도메인/bbs/board1/board.php?bo_table=board1&page= <---- 이렇게 나와서 오류가 납니다.
혹 어디를 수정해야 하는지 알 수 있을까요???
click7님의 댓글
click7 쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 작성일
안녕하세요 짧은글 주소 아미나 적용중인데요
강좌에 나온 내용들은 잘 적용 되었으나 아래 부분이 문제가 있는거 같습니다..
제 생각엔 링크의 문제인듯 한데 어디를 수정해야 할지 모르겠습니다.ㅠㅠ
1. 리스트에서 페지징 클릭시 링크가 http://sample.com/board.php?bo_table=meida_01&page=3
이런 식으로 잡히면서 페이지 변경이 안되네요
2. 분류있을때 분류링크 문제
분류를 클릭해도 제자리네요.
이것도 링크 문제인듯 한데요 이런식으로 잡히더라구요 http://sample.com/board.php?bo_table=media_02&sca=%EC%85%80%EB%9D%BC%EC%B0%AC%EC%96%91%EB%8C%80
아무리 해봐도 저의 한계인것 같아 문의 드립니다