Обратный прокси-сервер Apache с Wildfly?
У меня установлены Apache и Wildfly в системе Ubuntu 14.04. Теперь я хотел бы сделать Wildfly (локально http://localhost:8080
) доступно из Apache (http://webserver/wildfly
). Как бы мне это сделать?
Софар, я включил две моды: proxy
а также proxy_http
, И я добавил в конце документа /etc/apache2/apache2.conf
:
ProxyRequests off
ProxyPass /wildfly/ http://localhost:8080/
ProxyPassReverse /wildfly/ http://localhost:8080/
РЕДАКТИРОВАТЬ:
Теперь половина этого работает, но пути не преобразованы правильно. Путь к одному из моих приложений, работающих на Wildfly:
http://webserver/wildfly/testproj/Index.xhtml
Но все ссылки на его странице обрабатываются так:
http://webserver/testproj/Page1.xhtml
http://webserver/testproj/Page2.xhtml
http://webserver/testproj/Page3.xhtml
а не это:
http://webserver/wildfly/testproj/Page1.xhtml
http://webserver/wildfly/testproj/Page2.xhtml
http://webserver/wildfly/testproj/Page3.xhtml
Если я запускаю Wildfly локально, все работает нормально. Это позволяет мне полагать, что в конфигурации обратного прокси-сервера Apache должна быть ошибка. Это правильно? Что я должен сделать, чтобы Apache проанализировал правильные адреса / ссылки?
1 ответ
Я надеюсь, что вы решили свою проблему, но в случае, если есть кто-то еще, кому мой ответ на этот вопрос, вот решение,
Для веб-приложений, развернутых вне файла EAR (развертывание WAR)
В папке web-inf
MyApp/ SRC / Главный / WebApp/WEB-INF/
добавьте файл jboss-web.xml с этим содержимым, где / - это корневое развертывание, если вы хотите развернуть его в качестве корневого для своего случая, просто измените "/" с "testproj".
<jboss-web>
<context-root>/</context-root>
</jboss-web>
EAR-файл
Из официальной документации (пожалуйста, проверьте ссылку) вы можете обнаружить, что внутри файла EAR корень контекста определен в файле application.xml. в следующем примере корневым контекстом web-client.war является банк, поэтому для приложения установлено значение / bank, что означает, что URL будет www.domaine.com/bank
<module>
<ejb>bank-ejb.jar</ejb>
</module>
<module>
<web>
<web-uri>web-client.war</web-uri>
<context-root>bank</context-root>
</web>
</module>
ссылка: Jboss Doc - Глава 6. Настройка корневого контекста веб-приложения.