2015-12-16 2 views
1

Я пытаюсь использовать mod_proxy для настройки обратного прокси для нескольких веб-приложений с использованием одного веб-сервера Apache (версия 2.4).Ошибка обратного прокси-сервера Apache

У меня есть два приложения, работающие на двух разных серверах TOMCAT:

1. http://app.test.com:8080/app 
2. http://app.test.com:8090/app 

Я включили требуемые модули в файле httpd.conf и добавлены следующие строки в то же самое:

> ProxyPass /App1/ http://app.test.com:8080/app 
> ProxyPassReverse /App2/ http://app.test.com:8090/app 

Проблема заключается в том, когда я тестирую это, используя нижеприведенный URL:

http://rp.test.com:80/App1/ and http://rp.test.com:80/App2/, веб-сервер apache делает это nd me к приложениям, размещенным на tomcats, но дает ошибку 404 при нажатии любой внутренней ссылки приложения.

Думаю, что у меня отсутствует часть конфигурации здесь. Какие-либо предложения?

ответ

0

Вам также необходимо настроить разъемы Tomcat за прокси-сервером. Что-то вроде этого, содержащее ваше имя и порт вашего внешнего сервера.

<Connector port="8081" ... 
      proxyName="www.mycompany.com" 
      proxyPort="80"/> 

Чтобы настроить путь в URL, вы можете использовать директиву proxypassreversepath см:

http://httpd.apache.org/docs/2.2/mod/mod_proxy.html#proxypassreversecookiepath

ProxyPassReverseCookiePath /App1/ /app/ 
+0

Пробовал выше исправить. Проблема, с которой я сталкиваюсь, - это когда я перехожу на страницу, используя: http://rp.test.com:80/App1/, и щелкните по ссылке, которую она автоматически разрешит на http://rp.test.com:80/ manager.html и выдает ошибку 404. Фактический URL должен быть http://rp.test.com:80/App1/manager.html – user3150734

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