2016-11-22 4 views
1

Можно ли использовать апача для прокси-сервера имя хоста и порт динамически, как так:Динамическое имя хоста и порт прокси с апача

/<PORT>/<HOSTNAME> -> http://<HOSTNAME>.domain.local:<PORT> 

Я попытался с помощью ProxyPassMatch:

ProxyPassMatch "^/([0-9]+)/(host-[0-9]+)$" "http://$2.domain.local:$1" 

Но апача выдает синтаксическую ошибку AH00526. Это использует apache 2.4.7.

ответ

1

От Apache Docs:

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

Единственный способ решения проблемы я могу думать о том, чтобы использовать mod_rewrite с [P] флагом:

RewriteEngine On 
RewriteRule "^/([0-9]+)/(host-[0-9]+)$" "http://$2.domain.local:$1" [P] 

(Но это приходит с потерей производительности, а также иметь в виду, что с такой динамической проксированием вы не можете использовать ProxyPassReverse для настройки URL-адреса в ответах на перенаправление HTTP)

Смежные вопросы