Active Directory 도메인에 Windows 2016 서버(FQDN: server1.domain)가 있습니다. IIS에서 인트라넷 웹 앱을 호스팅하고 있습니다.
최근에 DNS에서 생성된 해당 서버에 대한 별칭(FQDN: CoolName.domain)을 얻었습니다. TLS 인증서는 내부 인증 기관에서 생성되었습니다. IIS 내에서 포트 443을 호스트 이름 CoolName.domain
과 CoolName
인증서에 바인딩했습니다 .
사람들이 이전 도메인을 입력할 때마다 기존 앱을 이전 도메인(예: server1.domain/app1
)에서 별칭(예: )으로 리디렉션할 수 있기를 원합니다 . CoolName.domain/app1
또한 HTTP를 사용하는 경우 HTTPS를 강제 적용합니다.
내 시도는 IIS 관리자 내의 서버 수준에서 HTTP 리디렉션 모듈을 사용하고 다음을 작성했습니다.
요청을 이 대상으로 리디렉션합니다.https://CoolName.도메인
리디렉션 동작: 선택됨
Redirect all requests to exact destination (instead of relative to destination)
그런 다음 적용을 누릅니다.
내가 수행한 옵션에 대한 이미지 참조:https://i.stack.imgur.com/vgPld.jpg
다음 링크를 방문하면 리디렉션에 실패했습니다.
http://server1
http://CoolName
http://CoolName.domain
결국 http://server1.domain
으로 리디렉션되었습니다 https://CoolName.domain
.
과 같이 도메인 외부의 URL을 리디렉션하려고 시도하자마자 http://CoolName.domain/app1
리디렉션되지 않습니다. 확인란을 선택 취소하려고 했습니다.모든 요청을 정확한 대상으로 리디렉션합니다(대상이 아닌).#2에서.
내 요구 사항이 HTTP 리디렉션만으로 가능합니까?
답변1
나는 초기 게시물에서 "너무 많은 HTTP 리디렉션"과 관련된 오류를 받았다는 사실을 언급하지 않았습니다. HTTP 리디렉션을 활성화하고 동일한 웹 사이트로 리디렉션하면(다른 별칭을 사용하더라도) 끝없이 리디렉션됩니다. 분명히 IIS는 동일한 도메인으로 리디렉션되었는지 여부를 감지할 만큼 똑똑하지 않습니다. 그림을 이동. 여기 지침에 따라 문제를 해결했습니다.https://stackoverflow.com/a/49460688
요약하자면: 더미 웹 사이트를 만들고 IIS의 해당 사이트를 통해 모든 포트 80 HTTP 트래픽을 바인딩한 다음 원래 IIS 웹 사이트에 구성된 HTTPS로 리디렉션할 수 있습니다. 그렇게 하려면:
- 기본 웹 사이트 - 모든 HTTP 트래픽을 80이 아닌 사용 가능한 포트에 바인딩합니다(또는 HTTP 바인딩을 제거할 수 있음). HTTPS 바인딩은 그대로 둡니다.
- IIS(RedirectSite)에서 새 웹 사이트 만들기: 모든 HTTP 트래픽을 포트 80에 바인딩합니다.
- DummySite 설정 내에서 HTTP 리디렉션을 클릭합니다. "요청을 이 대상으로 리디렉션" 확인란을 선택합니다. 대상 URL 필드에 HTTPS가 포함된 전체 도메인을 입력하세요. 예.https://CoolName.도메인. HTTP 코드 301. 도메인과 관련된 모든 것을 리디렉션하고 싶었으므로 다른 상자를 선택할 필요가 없습니다. 설정을 저장하려면 "적용"을 누르십시오.
Windows 인증을 사용하는 경우 설정을 적용한 후 변경 사항이 적용될 때까지 몇 분 정도 기다립니다. 리디렉션을 시도할 때 인증 오류(HTTP 40x.x) 문제가 발생했습니다. 링크를 테스트하기 전에 클라이언트 브라우저에서 캐시를 지우십시오.
시험. 나는 초기 게시물에 따라 링크를 사용했습니다.
http://서버1
http://쿨이름
이러한 링크는 결국 다음으로 리디렉션되어야 합니다.https//쿨이름.도메인.
해당되는 경우 두 웹사이트 모두에 대한 참고 사항:
IIS_IUSRS 및 IUSR에 웹 사이트 디렉터리에 대한 읽기/실행 권한이 있는지 확인하십시오. [Server_name]\Users와 동일
Windows 인증이 올바르게 구성되었는지 다시 확인하세요.