Notice
Recent Posts
Recent Comments
Link
Daniel's Knowledge Storage
board.php?idx=1234 를 board/1234로 만들기 - rewrite 본문
흔히 게시판을 만들게 되면 GET방식으로 글 번호나 게시판 아이디를 board.php나 view.php로 넘겨 주고 그 파일에는 받은 파일을 근거로 DB에서 자료를 로드한다.
이경우 아래와 같이 주소가 생기게 된다.
게시판 목록의 경우
- http://mysite.com/board/list.php?board_id=notice
게시판 내용보기의 경우
- http://mysite.com/bord/view.php?board_id=notice&document_id=1234
이 주소를 아파치서버의 Rewrite를 사용하여 간단하게 줄일 수 있다.
자신의 계정의 가장 상위에(index.html이 돌아가는...) 다음과 같은 파일을 생성한다.
.htaccess
내용은 다음과 같이 한다.
RewriteEngine On
# 글번호만 입력시 보기 페이지로
RewriteRule ^board/([[:digit:]]+)$ ./board/view.php?idx=$1 [QSA,NS,L]
# 게시판 아이디 입력시 리스트 페이지로
RewriteRule ^board/([a-zA-Z0-9_]+)/$ ./board/list.php?mid=$1 [QSA,NS,L]
^board/ 는 고정으로 지정할 경로이다.
([a-zA-Z0-9_]+) 는 소문자 a~z까지와 대문자 A~Z까지, 그리고 숫자 0~9까지가 입력 된다는 의미이다.
그리고 ./board/list.php~~~~ 같은 실제 연결할 경로와 변수명 ?mid= 을 지정하고 $1 을 지정한다. $1은 앞에 나온 ([a-zA-Z0-9_]+)에 들어가는 것이다.
([a-zA-Z0-9_]+)/([a-zA-Z0-9_]+) 식으로 됐다면 $1,$2 식으로 늘어 나간다.
'Develop' 카테고리의 다른 글
CRON을 이용한 Mysql 백업 (0) | 2009.10.15 |
---|---|
Linux crontab PHP에 응용하기 - 예약메일 발송등... (0) | 2009.10.02 |
mysql 예약어 (0) | 2009.09.28 |
플래시 위로 레이어 띄우기 (0) | 2009.09.04 |
모든 브라우져에서 다 되는 플래시 삽입 테그 (0) | 2009.09.01 |
Comments