Avem două aplicații în spatele routerului nostru care ascultă pe portul 80/443. Routerul are o singură adresă IP validă. Prima aplicație este un server de e-mail, iar a doua este serverul nostru de control sursă.
În acest caz, o soluție este să setați fiecare aplicație să asculte pe un port diferit. Acest lucru nu este de dorit pentru noi.
Deci avem un server Windows/IIS care primește tot traficul de Internet pentru a acționa ca un fel de proxy.
Pentru a face asta, am creat două site-uri.
Am creat primul site după cum urmează:
- Legat de
mail.mydomain.com:80
și autodiscover.mydomain.com:443
.
- Redirecționare HTTP la
http://192.168.50.12
- Redirecţiona
http
la https
Și al doilea site ca mai jos:
- Legat de
scm.mydomain.com:80
- Redirecționare HTTP la
http://192.168.50.85
Ambele site-uri trimit codul de stare HTTP-301 în timpul redirecționării.
Primul funcționează bine atât din rețea internă, cât și din extern.
Al doilea funcționează din rețea internă, dar nu externă. Motivul este că atunci când navigăm pe primul site http://mail.mydomain.com
, adresa URL din bara de adrese a browserului nu se schimbă, dar atunci când navigați pe al doilea site, adresa URL se schimbă de la http://scm.mydomain.com
la http://192.168.50.85
și evident că nu funcționează din exterior.
Toate gazdele (mail, autodiscover, scm) sunt definite în DNS-ul nostru extern ca înregistrări A care indică singura adresă IP validă pe care o avem.
Având în vedere că ambele site-uri sunt configurate exact în același mod, de ce se întâmplă asta?