Apache Host Header Proxy
-
26-10-2019 - |
Вопрос
У меня есть несколько URL -адресов на сервер. Я хочу, чтобы заголовки хоста пользователя перенаправляли трафик. Я пытаюсь использовать Apache, чтобы перенаправить эти запросы на различные серверы, которые находятся внутри нашего брандмауэра. Я получил часть решения, но, кажется, что -то упускаю.
Например, http://hostheader1.mycompany.com должен быть перенаправлен на сервер внутри нашего брандмауэра, который обрабатывает запросы на Hostheader1, и результат должен быть возвращен клиенту. http://hostheader2.mycompany.com должен быть перенаправлен на сервер внутри нашего брандмауэра, который обрабатывает запросы на Hostheader2. И т.п.
Прямо сейчас у меня есть следующее, но он перенаправляет весь трафик на http: // hostheader1handler/:
<VirtualHost *:*>
ProxyPreserveHost On
ProxyPass / http://hostHeader1Handler/
ProxyPassReverse / http://hostHeader1Handler/
ServerName hostHeader1.mycompany.com
</VirtualHost>
Любая помощь оценена.
Скотт
Решение
Это, вероятно, ваш первый или ваш единственный виртуальный хост. Просто добавьте еще один виртуальный хост раньше. Тогда это должно быть новым дефолтом.
NameVirtualHost *:*
<VirtualHost *:*>
ServerName your.default.domain.de
DocumentRoot /var/www/pathToHTML
</VirtualHost>
<VirtualHost *:*>
ProxyPreserveHost On
ProxyPass / http://hostHeader1Handler/
ProxyPassReverse / http://hostHeader1Handler/
ServerName hostHeader1.mycompany.com
</VirtualHost>