У меня есть один файл конфигурации Apache с одной записью VirtualHost. Мне нужно, чтобы Apache выступал в качестве обратного прокси-сервера для различных сайтов назначения на основе URI.
Пример:
<VirtualHost>
RewriteCond %{REQUEST_URI} ^/URI1/(\S+)$
RewriteRule ^.*$ https://<PROXY1 IP>:443%{REQUEST_URI} [P]
ProxyPassReverse ^ https://<PROXY1 IP>:443
RewriteCond %{REQUEST_URI} ^/URI2/(\S+)$
RewriteRule ^.*$ https://<PROXY2 IP>:443%{REQUEST_URI} [P]
ProxyPassReverse ^ https://<PROXY2 IP>:443
</VirtualHost>
Это прекрасно работает. Здесь проблема. Мне нужно, чтобы эта обработка пришла на конец очень длинного списка правил mod_rewrite. В идеале я хотел бы поместить все эти дополнительные правила mod_rewrite в файл .htaccess и сохранить файл conf красивым и чистым. Проблема заключается в том, что независимо от настроек наследования, которые я пробовал, Apache сначала обработает правила mod_rewrite в разделе VirtualHost, по сути обнуляя файл htaccess.
Я могу переместить правила proxy mod_rewrite в конец файла htaccess, но мне нужно, чтобы в игре было несколько директив ProxyPassReverse (и они не могут быть в файле htaccess или директиве <Directory>
).
Неужели я застрял в огромной записи VirtualHost со всеми моими правилами и прокси-правилами внизу?
Большое спасибо.