Создание обработчика HTTP для IIS, который прозрачно перенаправляет запрос на другой порт? - PullRequest
1 голос
/ 29 апреля 2010

У меня есть общедоступный веб-сервер, на котором установлено следующее программное обеспечение:

  • IIS7 на порту 80
  • Subversion через Apache на порт 81
  • TeamCity через apache на порту 82

К сожалению, и Subversion, и TeamCity поставляются с собственными установками веб-серверов, и они работают безупречно, поэтому я не хочу пытаться переместить их всех для работы под IIS, если это возможно.

Однако я смотрел на IIS и заметил часть перенаправления HTTP, и мне было интересно ...

Можно ли мне создать обработчик HTTP и установить его в поддомене под IIS7, чтобы все запросы, скажем, http://svn.vkarlsen.no/anything/here передавались моему обработчику HTTP, который затем впоследствии создает запрос к http://localhost:81/anything/here,, извлекает данные и передает их исходному запрашивающему?

Другими словами, я бы хотел, чтобы IIS обрабатывал прозрачные переадресации на порты 81 и 82 без использования функций перенаправления. Например, Subversion не любит перенаправление HTTP и просто говорит, что хранилище было перемещено, и мне нужно переместить мою рабочую копию. Это не то, что я хочу.

Если кто-то думает, что это можно сделать, есть ли у кого-нибудь ссылки на темы, которые мне нужно прочитать? Я думаю, что могу управлять фактическими частями запроса, даже с аутентификацией, но я не знаю, как создать обработчик HTTP.

Также имейте в виду, что мне нужно обрабатывать подпути и документы в домене верхнего уровня, поэтому http://svn.vkarlsen.no/whatever/here должен обрабатываться одним обработчиком, я не могу создать копии обработчика для всех подчиненных -каталоги, так как пути создаются время от времени.

1 Ответ

2 голосов
/ 29 апреля 2010

Попробуйте подключить Application Request Routing для IIS, чтобы настроить IIS в качестве обратного прокси .

...