URL Rewrite 1.1 (URL 재작성) - (1) 소개 및 설치
URL Rewrite의 기본 역할? 어디에 쓰는 건가요?
URL Rewrite는 사용자가 기억하기 더 쉽고, 검색 엔진에 의해 검색될 수 있도록 하는 URL을 만들어 주는 IIS의 확장기능(Extension) 입니다. Rewrite 본연의 기능을 보시려면, 아래의 화면을 통해 말씀 드리겠습니다.
이렇게 복잡한 URL 링크는 사용자나 검색엔진에게 친화적이지 않습니다. 보통 이런 URL을 Dirty Link 라고도 표현하는데요, 이를 보완하기 위해 아래에 보시는 깔끔한 링크처럼 사용자 편의적이고 검색엔진에 친화적인 URL로 만들어주는(Fancy URL) 기능이 바로 URL Rewrite가 지원하는 대표 기능입니다.(느끼시는 것처럼 그 외에도 다양하고 많은 기능들을 제공합니다.)
Rewrite에서 말하는 Rule 이란 무엇입니까?
이렇게, IIS Rewrite에서 특정 조건의 URL을 Fancy URL로 바꿔주는 하나하나의 규칙을 “Rule” 이라고 표현합니다.
Rule template이나 rewrite map 등을 쉽게 구축 가능하도록 돕는 이 기능은 HTTP 헤더의 URL과 서버변수(Server variable) 등에 대해서 처리가 가능하며 재정의된 응답을 사용자에게 내려 보내거나 HTTP 요청을 중지하는 다양한 규칙을 만들 수도 있으며, 보안 기능 등에도 활용 가능합니다. ? 차근차근 보여 드리겠습니다.
URL Rewrite의 주요한 특징 및 기능
- Rule을 기반으로 동작해 다양한 로직이나 표현식, 개발 루틴 등을 이용 가능해 강력한 rewrite 처리가 가능하빈다.
- 정규 표현식을 이용 가능합니다. ECMA-262 호환 정규 표현식 구문을 사용 가능합니다.
- 와일드카드(wild card) 패턴 매칭을 이용 가능합니다.
- Rewrite는 HTTP 헤더에 기반한 URL과 서버변수(Server variable)에 대해서 처리합니다.
- 다양한 rule 동작을 제공해, 단순한 rewriting 뿐만 아니라, HTTP 리다이렉트, HTTP 요청 중지, 커스텀 상태 코드를 클라이언트에 전달하는 처리 역시 가능합니다.
- IIS 커널 모드와 User 모드 출력 캐시를 지원해 빠른 성능을 제공합니다.
- 문자열 처리 함수를 제공합니다. 기본 포함된 문자열 처리 함수들과 다양한 변환 함수 등의 Action 처리가 가능합니다.
- Rewrite map을 지원합니다. ? 이는 다수의 매핑 rule에 대한 정의가 편리합니다. GUI로도 생성 가능합니다.
- Rule 템플릿을 지원
- IIS의 관리툴과 완벽하게 상호 작용해 관리의 편의성이 높고 GUI 기반의 rule 생성, 체크 테스트,디버깅 등을 도와 줍니다.
- mod_rewrite의 rule도 손쉽게 GUI를 통해 import를 할 수 있습니다.
- 국내에서 가장 많이 사용되는 오픈소스 웹 어플리케이션의 rewrite rule도 완벽하게 지원합니다. 요것도 차근차근 보여 드리겠습니다.
URL Rewrite 다운로드
개인적으로는 웹 플랫폼 인스톨러(Web Platform Installer)-WPI 2.0을 이용해 다운로드 하실 것을 추천해 드립니다.
웹 플랫폼 인스톨러 https://www.microsoft.com/web/downloads/platform.aspx
웹 플랫폼 인스톨러는 윈도우 서버에서 사용되는 모든 웹 플랫폼 프레임워크, 웹 어플리케이션, IIS 확장 기능 및 SQL서버와 같은 제품 등에 대한 설치와 구성을 돕는 최고의 툴입니다. ? IIS로 웹 어플리케이션을 구동하기 위한 최적의 툴이지요.
웹플랫폼 ? 웹서버의 사용자 지정 ? 일반 HTTP 기능에서 설치 가능합니다.
또는 https://www.iis.net/extensions/URLRewrite 링크에서 다운로드 가능합니다. X86용과 X64용이 모두 제공되는 적절한 파일을 받으시면 됩니다.
더 많은 다양한 IIS 관련 강좌는 IISKOREA 커뮤니티 https://www.iiskorea.net 에서 확인 하실 수 있습니다.