웹서버 분류

NGINX에서 그누보드 짧은 주소 성공기

컨텐츠 정보

본문

0. 들어가며

 

그누보드 홈페이지에서 짧은 주소에 관한 글을 읽다보니 전부 .htaccess 생성에 관한 글들 밖에 없더군요.

 

참고로 NGINX에서는 .htaccess룰을 쓰지 않기 때문에 .htaccess 파일 생성으로는 실패할 수 밖에 없습니다.

 

우선 apache에서의 짧은 글 주소에 대해 알아보죠.

 

 

1. 그누보드4 + 아파치 조합

 

그누보드 루트에 .htaccess 파일 생성 후

 


<IfModule mod_rewrite.c>
RewriteEngine On
RewriteRule ^([a-zA-Z0-9_]+)/([0-9]+)$ bbs_shorten.php?bo_table=$1&wr_id=$2
</IfModule>

 

위 내용을 넣고 저장합니다.

 

 

그리고 그누보드 루트에  bbs_shorten.php 파일 생성 후

 


<?php
include_once("_common.php");
goto_url("$g4[bbs_path]/board.php?bo_table=$bo_table&wr_id=$wr_id");
?>

 

 

또는

 

 


<?php
include_once("_common.php"); 
goto_url("$g4[url]/$g4[bbs]/board.php?bo_table=$bo_table&wr_id=$wr_id"); 
?>

 

 

또는

 

 


<?php
Header("Location: $g4[path]/bbs/board.php?bo_table=$bo_table&wr_id=$wr_id"); 
?> 

 

를 넣고 저장하면 됩니다.

 

 

2. 그누보드4 + Nginx 조합

 

글 초기에 알려드렸듯이, NGINX에서는 .htaccess 파일을 쓰지 않기 때문에 간단하게 

 

NGINX 설정 파일에 추가하면 됩니다.

 

우분투 기준으로 /etc/nginx/sites-available/default 에서

 

 


server{
.
.
rewrite ^/([a-zA-Z0-9_]+)/([0-9]+)$ /bbs_shorten.php?bo_table=$1&wr_id=$2;
.
.
}

 

 

위와 같이 서버 안에 rewrite 구문을 넣어주면 됩니다.

 

 

아파치와 마찬가지로 그누보드 루트에  bbs_shorten.php 파일 생성 후

 

 


<?php
include_once("_common.php");
goto_url("$g4[bbs_path]/board.php?bo_table=$bo_table&wr_id=$wr_id");
?>

 

 

또는

 

 


<?php
include_once("_common.php"); 
goto_url("$g4[url]/$g4[bbs]/board.php?bo_table=$bo_table&wr_id=$wr_id"); 
?>

 

 

또는

 

 


<?php
Header("Location: $g4[path]/bbs/board.php?bo_table=$bo_table&wr_id=$wr_id"); 
?> 

 

를 넣고 저장하면 됩니다.

 

 

3. 그누보드5 + apache2 조합

 

그누보드 루트에 .htaccess 파일 생성 후

 

 


<IfModule mod_rewrite.c>
RewriteEngine On
RewriteRule ^([a-zA-Z0-9_]+)/([0-9]+)$ bbs_shorten.php?bo_table=$1&wr_id=$2
</IfModule>

 

 

위 내용을 넣고 저장합니다.

 

 

그리고 그누보드 루트에  bbs_shorten.php 파일 생성 후

 

 


<?php
include_once("_common.php"); 
goto_url(G5_BBS_URL."/board.php?bo_table=$bo_table&wr_id=$wr_id");
?>

 

 

위 내용을 넣고 저장합니다.

 

 

4. 그누보드5 + Nginx 조합

 

NGINX 설정 파일에 추가하면 됩니다.

 

우분투 기준으로 /etc/nginx/sites-available/default 에서

 

 


server{
.
.
rewrite ^/([a-zA-Z0-9_]+)/([0-9]+)$ /bbs_shorten.php?bo_table=$1&wr_id=$2;
.
.
}

 

 

위와 같이 서버 안에 rewrite 구문을 넣어주면 됩니다.

 

 

그리고 그누보드 루트에  bbs_shorten.php 파일 생성 후

 

 


<?php
include_once("_common.php"); 
goto_url(G5_BBS_URL."/board.php?bo_table=$bo_table&wr_id=$wr_id");
?>

 

위 내용을 넣고 저장합니다.

 

관련자료

댓글 9

희망규짱님의 댓글

엄.. 해보니 주소는 http://홈피주소/그룹이름/게시물주소 로 나오긴 한데 주소입력해보면 힌백지가 뜨네요,
3. 그누보드5 + apache2 조합 으로 했는데 제가 뭘 잘못 한건지..

희망규짱님의 댓글의 댓글

읔.. 혹시나 해서 아래 주소를 압축풀어서 업로드 했더니
http://sir.co.kr/bbs/board.php?bo_table=g5_tip&wr_id=1489
이젠 아에 접속조차 안되네요. 험..

우성군님의 댓글의 댓글

아파치는 기존 강좌대로 해서 자세한 사항은 잘 모르겠네요.

그리고 SIR의 그 게시물은 위 글과 전혀 다른 내용입니다.

희망규짱님의 댓글의 댓글

아아아아아아아아아!!!!!!!!
우성군님!!
위 소스를 제가 커피 클립보드 저걸 눌러서 복사를 했는데
붙여넣고 대조도 안해보고 그냥 등록했는데 확인해보니
include_once("_common.php"); 요기 옆에 &nbsp;
요게 생겨 버리더라고요 그래서 아. 혹시 이것때문인가 하고 업로드 시켰더니 되네요 ㅎ
호.. 앞으론 맨앞에버튼을 눌러서 복사해야겠네요.
고맙습니다~

선구자님의 댓글

작년말에 본것 같은데 이제서야 성공했습니다.

사이트가 여러개라서
nginx default
server{ }에서 리와이트 한번에 하려다가
사이트중 워드프레스도 있고, 약간 두려움에 사이트 별로 적용해주니 잘 되네요
 
감사합니다.
웹서버 26 / 2 페이지
RSS

최근글


새댓글


알림 0