IDC 엔지니어의 기술 이야기

Windows Server 2016 IIS URL 재작성 본문

OS_APP

Windows Server 2016 IIS URL 재작성

붉은볼곰팅이 2024. 1. 23. 14:05
반응형

==환경==

OS : Windows Server 2016

IIS : 10.0.14393

 

목표 > 사용자들이 http://www.a.com 으로 접근할시 https://www.a.com 으로 자동 리디렉션

현재상황 > IIS에 www.a.com  뿐만 아니라 test.a.com, gw.a.com 과 같이 여러개가 같이 셋팅 되어있음

                  그래서 IIS 기본 기능중 "HTTP 리디렉션"을 사용할수 없음

                  또한 소스쪽에서는 HTTP 리디렉션 설정을 할줄 모른다고 IIS에서 해달라고 함

실행할것 >

1. http://www.a.com 으로 접근해오는 도메인에 대해서만 https://www.a.com  으로 리디렉션 할것

2. http://www.a.com/dddd 과 같이 뒤에 SubURL에 대해서 어떤것이 오든 https://www.a.com 으로 리디렉션 할것

 

==실제 작업==

1. URL Rewrite 설치

https://www.iis.net/downloads/microsoft/url-rewrite

 

URL Rewrite : The Official Microsoft IIS Site

Overview IIS URL Rewrite 2.1 enables Web administrators to create powerful rules to implement URLs that are easier for users to remember and easier for search engines to find. By using rule templates, rewrite maps, .NET providers, and other functionality i

www.iis.net

 

설치후 "IIS 관리자"만 껏다 키면 아래와 같은게 새로 생긴게 보인다

 

2. URL 필터 및 조건 작성

1) "규칙 추가" > "빈 규칙" 추가

 

2). URL 검색 작성

이름 : 이름 하고 싶은거 적당히 넣으면 됨

요청한 URL(R): 패턴과 일치 선택

사용(S): 정규식 선택

패턴(T): (.*) 입력

대소문자 무시 : 체크

** 패턴 (.*) 가 의미 하는것은 www.a.com/cs/test  의 도메인에서 /cs/test 부분을 의미하며 모든것을 다 포함한다는 애기이다

 

패턴테스트 클릭후 아무 도메인이나 입력해서 아래와 같은 결과가 나오게 되면 정상이다

 

 

3) 조건 작성_1

조건 입력(C): {HTTP_HOST}

입력 문자열이 다음과 같은 경우 확인 : 패턴과 일치

패턴 : ^www\.a\.com

** 패턴 설명 : ^는 시작을 의미, \는 특수문자 앞에 붙임 해당 패턴은 www.a.com 만 인식한다는 뜻

 

패턴테스트시 아래와 같이 나오면 성공

 

참고로 다른 도메인을 넣을경우 실패로 뜬다

 

4)조건 작성_2

아래 내용은 HTTP로 들어오는 데이터에 대해서만 리디렉션을 한다는 것이다.

아래 조건이 없을경우 웹브라우저에서 접근시 "리디렉션한 횟수가 너무 많습니다" 라는 메시지가 발생하며

무한 루프가 생기게 된다

 

5)조건 작성_3

모든 조건이 완성되면 논리 그룹화는 "모두 일치"로 셋팅한다.

만약 일부 일치로 선택하게 되면 설정된 다른 도메인중에 http로 접근하는 접속자가 있으면

https://www.a.com 로 리디렉션 되게 되버린다 

 

6) 작업 유형 작성

작업 유형(Y) : 리디렉션 (URL 재작성도 비슷한 역활을 하지만 미묘한 차이가 있다)

작업 속성 : https://www.a.com 리디렉션할 도메인을 넣어준다. 예로 https://www.naver.com  넣게 되면 네이버로 페이지가 전환된다 ㅎㅎ

리디렉션 유형 : 찾음(302)

* 리디렉션 유형에는 "찾음" , "영구" 등이 대체적으로 쓰이는데

  영구는 사용자 브라우저 쿠키에 저장이 되어 동일한 접속시 로드를 줄여준다

  하지만 찾음은 사용자 브라우저 쿠키에 저장되지 않으므로 접속때마다 리디렉션을 위해서 서버에 들어오는 과정이 반복된다. 사용자 접속이 많은 사이트의 경우에는 "영구(301)" 셋팅은 권고 한다

 

 

IIS 재시작은 따로 필요없음

반응형

'OS_APP' 카테고리의 다른 글

WebDeploy를 활용한 Windwos IIS 마이그레이션  (0) 2023.09.25