У меня есть общедоступный веб-сервер, на котором установлено следующее программное обеспечение:
- 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 должен обрабатываться одним обработчиком, я не могу создать копии обработчика для всех подчиненных -каталоги, так как пути создаются время от времени.