У меня есть несколько URL-адресов, поступающих на сервер. Я хочу, чтобы заголовки хостов пользователя перенаправляли трафик. Я пытаюсь использовать Apache для перенаправления этих запросов на различные серверы, которые находятся внутри нашего брандмауэра. Я получил часть решения, но, похоже, мне что-то не хватает.Apache host header proxy
Например, 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>
Любая помощь приветствуется.
Scott
Оказывается, чтобы быть легче, чем я это делал. Просто поместите это в свой httpd.conf: 'RewriteEngine On' ' RewriteCond% {HTTP_HOST}^hostHeader1 \ .mycompany \ .com $ [NC] ' ' RewriteRule (. *) Http: // internalServerNameOrIP $ 1 [P] ' Scott –
Не используйте для этого правила перезаписи! Виртуальные хосты предназначены только для того, что вы пытаетесь сделать. См. Ответ @bitcloud и расширьте его. – Frans