Назад | Перейти на главную страницу

Только домашняя страница обратного прокси

Я регулярно использую Apache для обратного прокси-сервера на другие серверы с помощью ProxyPass и ProxyPassReverse. Я делал это папкой верхнего уровня. Но теперь у меня есть требование разместить домашнюю страницу сайта на новом сервере CMS.

Как лучше всего изменить прокси только для домашней страницы (для запросов: GET / HTTP / 1.1), не затрагивая каждый запрос?

Думаю, я могу перечислить все каталоги и страницы верхнего уровня на сервере с помощью! директива. Но, конечно, есть способ получше.

Вся помощь получена с благодарностью.

Директивы ProxyPass обрабатываются в порядке первого совпадения, просто укажите последнюю в CMS, например.

ProxyPass /app1 http://app1.example.org/app1
ProxyPassReverse /app1 http://app1.example.org/app1
ProxyPass /app2 http://app2.example.org/app2
ProxyPassReverse /app2 http://app2.example.org/app2

ProxyPass / http://cms.example.org/
ProxyPassReverse / http://cms.example.org/

В качестве альтернативы надейтесь на хорошо работающую CMS, где только основная целевая страница находится в корне, а все скрипты, изображения и другой контент находятся в соответствующих подкаталогах:

# Redirect requests to www.example.org/ to www.example.org/index.html
RewriteRule  ^/$                 /index.html

ProxyPass /index.html http://cms.example.org/index.html

ProxyPass /css http://cms.example.org/css
ProxyPassReverse /css http://cms.example.org/css    
ProxyPass /img http://cms.example.org/img
ProxyPassReverse /img http://cms.example.org/img