![Размещение более 1 веб-сайта через 1 публичный IP-адрес](https://rvso.com/image/1493964/%D0%A0%D0%B0%D0%B7%D0%BC%D0%B5%D1%89%D0%B5%D0%BD%D0%B8%D0%B5%20%D0%B1%D0%BE%D0%BB%D0%B5%D0%B5%201%20%D0%B2%D0%B5%D0%B1-%D1%81%D0%B0%D0%B9%D1%82%D0%B0%20%D1%87%D0%B5%D1%80%D0%B5%D0%B7%201%20%D0%BF%D1%83%D0%B1%D0%BB%D0%B8%D1%87%D0%BD%D1%8B%D0%B9%20IP-%D0%B0%D0%B4%D1%80%D0%B5%D1%81.png)
У меня есть 2 сайта, например:http://abc.xyz.co.inиhttp://123.xyz.co.in:8089размещен на одном физическом сервере (Windows Server 2012) на портах 80 и 8089. Сервер находится в зоне MZ и находится за внешним DNS, балансировщиком нагрузки, брандмауэром и т. д. Мой домен xyz.co.in преобразован в публичный IP-адрес, скажем: 11.22.33.44.
Теперь я не хочу, чтобы мои пользователи помнили номера портов для каждого веб-сайта, который я размещаю на этом сервере. Как мне упростить URL, удалив из него номер порта.
решение1
Это зависит от того, какой веб-сервер вы используете. Если вы используете IIS, тоКомментарий The_IT_Guy_You_Don't_Likeпомогает указать вам правильное направление. А именно,Использовать заголовки хоста в IIS.
Если пользователям не нужно указывать другой номер порта, то будет использоваться порт TCP 80. Веб-серверу понадобится какой-то метод определения того, какой веб-сайт предоставлять. Варианты могут включать различные каталоги (например,http://example.com/site1иhttp://example.com/site2) или разные имена хостов (например,http://example.comиhttp://example.net). Вы можете использовать разрешение имен, например DNS, чтобы иметь разные имена хостов. Поле "host" в заголовке HTTP позволяет вам заставить веб-сервер по-разному реагировать на эти разные имена.
Для настройки этого раздел конфигурации Apache называется VirtualHost. С IIS используйте опцию «Использовать заголовки хоста». Для других веб-серверов точный метод может отличаться.