Server관련/AWS

IIS8 http to https redirect 처리하기 (+ AWS ELB 설정)

saltdoll 2017. 4. 21. 01:37
반응형

 SSL적용을 위해서는, IIS에서 http:// 프로토콜을 요청시 https:// 프로토콜로 변경해주는 셋팅을 해줘야 합니다.


세팅방법은 2가지가 있습니다.


(1) 첫번째 경우: 서버내에서 사용되는 SSL경우 

(2) 두번째 경우: AWS의 ELB(로드발린싱)을 위한 경우 

    AWS를 위해서는 URL Rewrite Rule은 다릅니다.

 

 


(1) 첫번째 경우: 서버내에 SSL인증키가 있는 경우의 셋팅

HTTP 를 HTTPS로 redirect하기 위해서는 URI-Redirect 모듈이 필요합니다.

해당 모듈을 설치하기 위해서는, Web Platform Components을 설치해 줘야 합니다.


[ Web Platform 설치법 ]


[ URL Rewrite 설치법 ]




1) IIS에서 Web Platform설치 링크 

IIS의 Management 툴인 Web Platform Components을 설치해 줘야 합니다.

(해당 설치 링크 "Get New Web Platform Components" 클릭)



2) Web Platform 다운로드 사이트

http://www.microsoft.com/web/downloads/platform.aspx


해당 설치후에, Computer Management를 닫고, 다시 실행하면, 

해당 아이콘이 메니저 항목에 생성됩니다.



3) 설치후 다시 실행

Web Platform은 IIS에 사용되는 프로그램을 Plug In형식의 설치를 할 수 있는 프로그램입니다.



4) URL Rewrite 설치

Web Platform Installer 실행 > Server 카테고리 > URL Rewrite 2.0 설치(Add) > Install 클릭 설치

설치 완료후 > Computer Management다시 실행




설치가 끝나고, Computer Management를 다시 실행하면 URL Rewrite가 보입니다.



5) URL Rewrite 에 Rule추가하기

URL Rewrite 버튼 실행 > Add Rule(s).. 실행


Blank rule를 선택 > OK


[ Local 서버에 SSL Key가 있는 경우 ]

Match URL 항목중 Pattern값 입력.

- Pattern: (.*)


Conditions 항목에 Condition 추가(add)

- Condition input: {HTTPS}

- Pattern: ^OFF$


Action 항목 선택

- Action type: Redirect

- Action Properties

- Redirect URL: https://{HTTP_HOST}/{R:1}

- Redirect type: See Other (300)


Math URL입력


Condition 추가


Action 추가 및 설정


(최종) Local Server에 SSL Key가 있는 서버의 셋팅값 예제


 

 


(2) 두번째 경우: AWS의 SSL사용의 셋팅 (URL Rewrite설치후 단계) 

[ AWS ELB용 URL Redirect Setting ]

AWS ELB의 SSL을 사용하는 경우는 아래와 같이 설정을 해야 합니다.

(위와 같이 설정할 경우 Redirect가 설정하지 않으면 redirect호출이 많다며, 에러가 납니다.)


Name:   HTTPS rewrite behind ELB rule

Pattern: ^(.*)$


Conditions input: {HTTP_X_FORWARDED_PROTO}

Pattern: ^http$


Redirect URL: https://{SERVER_NAME}{URL}


#HTTPS rewrite behind ELB rule

RewriteCond %{HTTP_X_FORWARDED_PROTO} !^http$

RewriteRule ^/(.*)$ https://{SERVER_NAME}{URL} [L,R] 



[ IIS에서 URL 재작성 사용하기 => www 자동붙여서 이동하기 ]

test.com이라고 입력할때, www.test.com으로 Redirect처리를 해주는 셋팅입니다.


(주의)

- URL Rewrite 세팅은 Visual Studio에서 전체 Publish를 하게 되면, 간혹 셋팅 값이 다 사라지는 경우가 있음

  => 이유, Web.config를 삭제하기때문

- [tip] 부분 파일 Publish를 하면, 안전합니다.



[참고-IIS : URL Rewrite 의 mod_rewrite Rule 설정]

Importing Apache mod_rewrite Rules


 

[참고 -관련 포스트]

2016/10/14 - [IT공부방/AWS] - AWS ELB 환경에서 HTTPS 포워딩 시키기

2016/10/14 - [IT공부방/AWS] - AWS - SSL 무료 사용하기(Certificate Manager) SSL/TLS 인증 서비스


[참고]

IIS에서의 URL 재작성 사용하기 (Xpress Engine > Support > 웹마스터 팁)



[IIS설정 - Microsoft]

HTTP Redirects <httpRedirect>


반응형
도움이 되셨다면 하트모양의 "♡ 공감"을 눌러주시면 큰 격려가 됩니다.
(로그인하지 않으셔도 가능)