"ip address/TestApp/"
будет отправлять трафик на веб-сайт по умолчанию (он также будет делать это с сервера, на котором размещен TestApp
). Вам нужно настроить DNS, чтобы ваши клиенты могли использовать имя хоста для разрешения IP-адреса или добавить файл хоста на каждом компьютере, который подключается, если у вас нет службы DNS для именованных привязок, чтобы работать так, как вы ожидаете.
«Под капотом», когда браузер отправляет HTTP-запрос (т. Е. Вводит URL / щелкает ссылку), имя домена отправляется в заголовке HTTP HOST
, этот заголовок используется IIS для определения того, какой сайт (то есть привязка) трафик отправляется. При использовании IP вы не предоставляете имя хоста, поэтому заголовок HOST
не отправляется, поэтому IIS будет направлять трафик на сайт по умолчанию (т. Е. Привязку без указания имени хоста).
Вы можете увидеть это в действии, запустив Telnet и отправив HTTP-запрос на IP-адрес вашего сервера (с локального хоста или другого хоста) и включив заголовок HOST, который вы должны получить ожидаемый ответ. (Это не очень полезно - обычно это делается вашим браузером - но это может дать вам некоторое представление о том, что на самом деле происходит ...)
Запустите Telnet с помощью telnet 192.168.1.2 80"
(измените IP для своего сервера), затем скопируйте / вставьте или введите следующие 2 строки в окно telnet, затем пустую строку:
GET /TestApp/ HTTP/1.1
host: testapp
Вы должны увидеть HTML, возвращенный с этого URL. Если вы попробуете описанное выше, но пропустите host
, вы получите HTML-код с веб-сайта по умолчанию (или страницы 404 и т. Д.)