Я ищу решение для перенаправления трафика http / https на внутренний веб-сервер на основе URL-адреса запроса. Наша текущая установка:
Оба работают под управлением Windows Server 2008 и IIS7. Веб-сервер1 принимает весь трафик на порты 80 и 443 и размещает веб-сайт www.example.com.
Теперь я хочу, чтобы Webserver2 был доступен по адресу www.example.com/Reports. К сожалению, у нас нет расширенного пограничного брандмауэра, который мог бы маршрутизировать трафик на основе URL-адреса запроса. Поэтому мне интересно, есть ли способ настроить Webserver1 для пересылки всего трафика, если он соответствует www.example.com/Reports. Каким образом IIS7 может это сделать?
Предложения приветствуются ..
IIS7 имеет Перезапись URL модуль, который вместе с Маршрутизация запросов приложений модуль, основанный на URL-адресе, можно использовать для того, что вы хотите.
Вы создаете все это в пользовательском интерфейсе, а затем он автоматически создает XML и помещает его в web.config за вас.
См. «Обратный прокси» (номер 7) на этот список.
Думаю, ваша проблема похожа на ту, что была у меня: Пересылка заголовков хоста
В конце концов я заплатил за фильтр «ISAPI_Rewrite», который, я уверен, может делать то, что вы хотите.
Единственная проблема заключается в том, что вам нужно немного потрудиться с RegEx, что мне немного сложно.
Возможно, вы сможете перенаправить URL-адрес на другой номер порта.
Поэтому настройте www.example.com/Reports как виртуальный каталог на веб-сервере 1, но перенаправьте его URL-адрес на www.example.com:444/Reports. Возможно, вам потребуется изменить доменное имя, на которое выполняется перенаправление.
Мне будет интересно посмотреть, как это работает, и пропустил ли я какие-либо шаги.