Я видел различные версии этого вопроса для Apache, но не видел ни одной версии IIS, поэтому спрошу:
У меня есть 2 сервера IIS7, 2 доменных имени (например, www.fooone.com и www.footwo.com) и 1 IP-адрес.
Я хочу, чтобы каждое доменное имя перешло на другой сервер IIS, а серверы IIS обслуживают совершенно разный контент.
Может ли IIS с этим справиться или мне нужен дополнительный прокси?
То, что вы хотите сделать, довольно распространено и называется "обратный прокси". Есть ряд аналогичных вопросов по ServerFault и Переполнение стека с несколькими различными решениями.
IIS7 может выполнять обратный прокси с парой установленных модулей .. вот руководство.
Моя рекомендация - использовать nginx (произносится как «Engine X») в третьей системе, и пусть эта система размещает единственный IP-адрес. Мне нравится идея вывести это с веб-серверов, просто для ясности.
Наконец, с начала этого года семейство StackOverflow конфигурация сервера / хостинга использовал HAProxy внешний интерфейс. Я не могу сказать с уверенностью, если это все еще есть, учитывая взрыв "StackExchange".
Смотря как. Одинаковый контент с обеих сторон?
IIS не может с этим справиться, но в Windows Server есть компонент NLB (балансировка сетевой нагрузки), который может. Назначьте IP-адрес для кластера NLB, затем направьте запросы на оба компьютера.
Да, это сложная ситуация, что вы можете сделать, это отправить весь трафик на один сервер, а затем перенаправить на другой, используя вашу внутреннюю сеть и IP-адреса, вроде прокси. Вы можете запустить это сразу после информации заголовка.
Насколько я понимаю, вам понадобится прокси для перенаправления трафика на правильный внутренний сервер, что-то вроде сервера Apache с директивами proxypass или Squid box. Однако вы можете столкнуться с настоящими проблемами, если захотите SSL.
Однако ISA может это сделать, если вы сможете запустить это на одной из машин. Затем запустите IIS на ISA-сервере на другом внутреннем IP-адресе и настройте правила обратного прокси-сервера ISA.