mod_rewrite 의 활용
Dev/php / 2010/03/03 18:57
mod_rewrite
# 이 문서는 오라클클럽에서 작성하였습니다.
# 이 문서를 다른 블로그나 홈페이지에 게재하실 경우에는 출처를 꼭 밝혀 주시면 고맙겠습니다.~^^
# 출처 : http://wiki.oracleclub.com/display/SWDEV/mod_rewrite?
# 이 문서는 오라클클럽에서 작성하였습니다.
# 이 문서를 다른 블로그나 홈페이지에 게재하실 경우에는 출처를 꼭 밝혀 주시면 고맙겠습니다.~^^
# 출처 : http://wiki.oracleclub.com/display/SWDEV/mod_rewrite?
# 이 문서를 다른 블로그나 홈페이지에 게재하실 경우에는 출처를 꼭 밝혀 주시면 고맙겠습니다.~^^
# 출처 : http://wiki.oracleclub.com/display/SWDEV/mod_rewrite?
mod_rewrite
1 mod_rewrite 설치
- apache 설치시 Configure 실행시에 --enable-rewrite 옵션을 추가한다.
- apache 설치 이후 추가 설치시
- 아파치 압축 푼 디렉토리로 이동 : cd /usr/local/httpd-2.0.63/modules/mappers
- apxs를 이용해 새 모듈 추가 : /usr/local/apache2/bin/apxs -aic mod_rewrite.c
2 Rewrite 모듈 지시자
2.1 RewriteEngine
- Rewriteing 엔진을 사용할지 여부를 설정
- 디폴트 설정은 Off, RewriteEngine On 으로 설정하지 않는 이상 Rewritng 엔진을 사용할 수 없다.
- 설정문법 : RewriteEngine On|Off
2.2 RewriteRule
- Rewrite 모듈의 실질적인 Rewrite 규칙들을 적용 한다.
- Input URL을 Return URL로 변경하기 위한 규칙들을 설정 한다.
- 아래는 RewriteRule을 이용해 퍼머링크를 만드는 예제다.
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteRule ^/$ /main.ok [R]
RewriteRule ^/community/([0-9]+)$ /articlelist.ok?article.communityId=$1 [PT]
RewriteRule ^/article/([0-9]+)$ /articleview.ok?article.articleId=$1 [PT]
</IfModule>
- RewriteRule 플래그
- F(forbidden) : 요청하는 페이지를 403 에러로 redirect 시킵니다.
- G(gone) : 요청하는 페이지를 410 에러로 redirect 시킵니다.
- R(redirect) : Return URL로 redirect 한다.
- PT(passthrough) : Input URL을 그대로 유지하며 Return URL을 실행한다.
- http://httpd.apache.org/docs/2.2/mod/mod_rewrite.html
2.3 RewriteCond
- RewriteCond 지시자는 RewriteRule 과 함께 사용된다.
- RewriteCond 다음에 오는 RewriteRule은 RewrieteCond 에서 설정한 패턴과 일치해야지만 RewriteRule들을 실행한다.
- 주로 서브도메인을 생성할 때 사용한다.
- http://system.neulwon.com/bbs/?mid=linux_dns&page=1&document_srl=202
참고4. 정규표현식 기초. : 다수의 한문자 |
# 이 문서는 오라클클럽에서 작성하였습니다.
# 이 문서를 다른 블로그나 홈페이지에 게재하실 경우에는 출처를 꼭 밝혀 주시면 고맙겠습니다.~^^
# 출처 : http://wiki.oracleclub.com/display/SWDEV/mod_rewrite?








