it-swarm-ru.tech

Можно ли настроить IIS для пересылки запроса на другой веб-сервер?

У меня есть несколько веб-сайтов, настроенных на одном сервере IIS 6, который отличается от Host Header.

Однако я хочу, чтобы один из сайтов обслуживался сервером Linux/Apache в моей сети. Нужно ли использовать надстройку обратного прокси-сервера для IIS или есть простой способ сообщить IIS о передаче всех запросов на другой сервер?

81
Daniel O

Для IIS 7.5, Microsoft предоставляет официальные модули для этого!

В настройках сайта вы получите значок "URL Rewrite".

  • Открой это
  • щелкните правой кнопкой мыши на "списке входящих правил"
  • Выберите "Добавить правило (и)"
  • Выберите "Обратный прокси"

В этом диалоговом окне вы можете ввести имя хоста + порт для пересылки. После добавления правила открытие диалогового окна редактирования предлагает больше настроек.

83
vdboor

Для этой цели я использую стороннее программное обеспечение для Windows (IIS), которое, помимо других вещей, таких как перезапись URL-адресов, выполняет эту работу довольно хорошо: ISAPI Rewrite .

ISAPI Rewrite - это мощный механизм обработки URL-адресов, основанный на регулярных выражениях. Он работает в основном как Apache mod_Rewrite, но разработан специально для Microsoft Internet Information Server (IIS). ISAPI Rewrite - это фильтр ISAPI, написанный на чистом C/C++, поэтому он очень быстрый. ISAPI_Rewrite дает вам свободу выйти за рамки стандартных схем URL и разработать собственную схему.

Поиск "Прокси". Вот документация для правила RewriteProxy .

Существует также очень похожий проект с открытым исходным кодом: Iap's Isapi Rewrite Filter .

17
splattne

Нет, не на IIS 6. Посмотрите на использование nginx/ubuntu (или даже nginx на Windows) в качестве обратного прокси-сервера перед вашим сервером IIS6. Нам пришлось использовать IIS7.5 для обратного прокси-сервера функции

1
John Fox