라우터 뒤에는 포트 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 레코드로 정의됩니다.
두 사이트가 모두 동일한 방식으로 구성되어 있다는 점을 고려하면 왜 그런 일이 발생합니까?