HTTP 리디렉션이 부분적으로 작동함

HTTP 리디렉션이 부분적으로 작동함

라우터 뒤에는 포트 80/443에서 수신 대기하는 두 개의 애플리케이션이 있습니다. 라우터에는 유효한 IP 주소가 하나만 있습니다. 첫 번째 애플리케이션은 메일 서버이고 두 번째 애플리케이션은 소스 제어 서버입니다.

이 경우 한 가지 해결책은 각 애플리케이션이 다른 포트에서 수신하도록 설정하는 것입니다. 이는 우리에게 바람직하지 않습니다.

따라서 일종의 프록시 역할을 하기 위해 모든 인터넷 트래픽을 수신하는 하나의 Windows/IIS 서버가 있습니다.

이를 위해 우리는 두 개의 사이트를 만들었습니다.

우리는 아래와 같이 첫 번째 사이트를 만들었습니다.

  • mail.mydomain.com:80및 에 바인딩됩니다 autodiscover.mydomain.com:443.
  • HTTP 리디렉션에게http://192.168.50.12
  • http다음으로 리디렉션https

두 번째 사이트는 아래와 같습니다.

  • 하게되다scm.mydomain.com:80
  • HTTP 리디렉션에게http://192.168.50.85

두 사이트 모두 리디렉션하는 동안 HTTP-301 상태 코드를 보냅니다.

첫 번째는 내부 네트워크와 외부 네트워크 모두에서 잘 작동합니다.

두 번째는 내부 네트워크에서는 작동하지만 외부에서는 작동하지 않습니다. 그 이유는 첫 번째 사이트를 탐색할 때 http://mail.mydomain.com브라우저 주소 표시줄의 URL이 변경되지 않지만, 두 번째 사이트를 탐색할 때 URL이 에서 으로 변경되어 http://scm.mydomain.com외부 http://192.168.50.85에서는 분명히 작동하지 않기 때문입니다.

모든 호스트(메일, 자동 검색, scm)는 외부 DNS에서 우리가 가지고 있는 유일한 유효한 IP 주소를 가리키는 A 레코드로 정의됩니다.

두 사이트가 모두 동일한 방식으로 구성되어 있다는 점을 고려하면 왜 그런 일이 발생합니까?

관련 정보