Назад | Перейти на главную страницу

Использование IIS7 в качестве обратного прокси

Мой вопрос практически идентичен указанному в списке, но они не получили ответа, поскольку в конечном итоге использовали Linux в качестве обратного прокси.

Использование IIS7 в качестве обратного прокси

Мне нужно, чтобы IIS был основным сайтом, а Linux (Apache) был прокси-сайтом (-ами).

так что я

site1.com (IIS7) site2.com (Linux Apache)

у них есть поддомены

sub1.site1.com sub2.site1.com

sub3.site2.com

Я хочу, чтобы весь трафик шел на site1.com, и все, что есть site2.com, должно быть проксировано на Linux-сервер во внутренней сети (верю, что ARR может это сделать, но не знаю, как это сделать).

Я не могу запустить его как Apache, выполняющий проксирование, поскольку мне нужно напрямую открыть IIS.

любой совет был бы отличным.

РЕДАКТИРОВАТЬ

Думаю, это может мне помочь:

<rule name="Canonical Host Name" stopProcessing="true">    
    <match url="(.*)" />    
    <conditions>    
        <add input="{HTTP_HOST}" negate="true" pattern="^cto\.com$" />  
        <add input="{HTTP_HOST}" negate="true" pattern="^antoniochagoury\.com$" />   
        <add input="{HTTP_HOST}" negate="true" pattern="www.antoniochagoury\.com$" />   
    </conditions>    
    <action type="Redirect" url="http://www.cto20.com/{R:1}" redirectType="Permanent" />    
</rule>  

из: http://www.cto20.com/post/Tips-Tricks-3-URL-Rewriting-Rules-Everyone-Should-Use.aspx

Я посмотрю на это, когда у меня будет доступ к ящику IIS7.

Спасибо

Клянусь, на это уже несколько раз ответили.

Чтобы использовать IIS в качестве обратного прокси, необходимо добавить два программного обеспечения: перезапись URL и маршрутизация запросов приложений (ARR). Оба могут быть загружены с Веб-сайт IIS.

Документацию для начала работы можно найти там.

В вашем редактировании упоминается, что HTTP_HOST - это серверная переменная для имени домена. У вас есть пара вариантов. Если сервер Apache открыт для всех, вы можете использовать перенаправление, как и там.

Вам нужна обратная ссылка на URL-адрес, чтобы иметь уникальные привязки для каждого сайта.

Например, добавьте 4-е условие и убедитесь, что оно находится внизу:

(это означает-что-нибудь- -точка- -это что-нибудь (кроме точки) - -дот- -всего (кроме точки) -)

Теперь {C: 1} будет обратной ссылкой на ваш домен 2-го уровня без TLD. то есть site1, site1.

В своем действии вы можете использовать что-то вроде этого:

Затем вы можете создавать привязки в Apache для site1.cto20.com, site2.cto20.com и т. Д.

Другой вариант - настроить ARR и использовать обратный прокси, а не перенаправление. При этом сохраняется исходный URL-адрес, и вашему серверу Apache не требуется общедоступный URL-адрес или IP-адрес. Ваши правила перезаписи могут быть похожими, так что каждый URL-адрес попадет на другой сайт на сервере Apache.