Обратный прокси Apache на основе заголовка

Итак, у меня есть конфигурация для apache, которая работает в 99% случаев. Он проверяет значение заголовка в запросе и на основании этого перенаправляет на правильный URL-адрес версии API со статусом 307 . Это работает для всех клиентов, которые правильно реализуют стек http. к сожалению, у меня есть приложение, которое не следует этому и преобразует все запросы POST в GET .

Итак, это proxy.conf , который я получил прямо сейчас:

RewriteEngine On
RewriteCond %{HTTP:X-Android-Version} =660
RewriteRule ^/services/6/(.*)$ /services/internal/6/$1 [R=307]

RewriteCond %{HTTP:X-Android-Version} >661
RewriteRule ^/services/6/(.*)$ /services/internal/7/$1 [R=307]


ProxyPass /services/internal/7 http://mbe700:8080/services/6
ProxyPass /services/internal/6 http://mbe600:8080/services/6

И вот что меня интересует:

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

2
задан 8 May 2018 в 10:31
1 ответ

Оказалось, что это было проще, чем я предполагал. .. просто изменение флага в rewriterule, похоже, помогло.

RewriteEngine On
RewriteCond %{HTTP:X-Android-Version} =660
RewriteRule ^/services/6/(.*)$ /services/internal/6/$1 [P]

RewriteCond %{HTTP:X-Android-Version} >661
RewriteRule ^/services/6/(.*)$ /services/internal/7/$1 [P]


ProxyPass /services/internal/7 http://mbe700:8080/services/6
ProxyPass /services/internal/6 http://mbe600:8080/services/6
1
ответ дан 3 December 2019 в 12:32

Теги

Похожие вопросы