У меня есть домен с правильно настроенными DNS, называемый mydomain.com, который указывает на мой сервер Ubuntu 16.04.3 в 11.11.11.11, поэтому, когда я представляю mydomain.com в браузере, я попадаю на страницу по умолчанию Apache, установленную на таком сервере. ,

У меня также есть Tomcat 7, установленный на том же сервере, на котором запущено приложение JSF APP, поэтому при вводе http://11.11.11.11:8080/myappname/ в моем браузере мое приложение появляется в браузере.

Я хотел бы перенаправить с Apache на мой Tomcat, поэтому каждый раз, когда кто-то пишет mydomain.com в своем браузере, появляется мое приложение.

Для этого я установил и настроил mod_proxy в соответствии со многими прочитанными мною учебниками (например, этим или другим ). Моя конфигурация в.CONF-файл сайта Apache по умолчанию:

ProxyPreserveHost On
ProxyPass / http://127.0.0.1:8080/myappname/
ProxyPassReverse / http://127.0.0.1:8080/myappname/

С этой конфигурацией, каждый раз, когда я пишу mydomain.com в браузере, отображается главная страница моего приложения JSF , НО В РАБОЧЕМ ТЕКСТЕ БЕЗ ФОТОГРАФИЙ /CSS И ЛЮБОГО URL ИЛИ РАБОТАЕТ ДИНАМИЧНАЯ ЧАСТЬ.

Если я проверю раздел "производительность" в инструментах Mozilla, я вижу много ошибок, подобных этим:

http://www.mydomaincom/myappname/javax.faces.resource/theme.css.xhtml[HTTP/1.1 500 Internal server error]
http://www.mydomaincom/myappname/images/EN.png [HTTP/1.1 404 Not Found 249ms]

С другой стороны, я обнаружил, что с этим конфигом:

ProxyPass /myappname 127.0.0.1:8080/myappname 
ProxyPassReverse /myappname 127.0.0.1:8080/myappname 

каждый раз, когда я пишу в своем браузере mydomain.com/myappname, страница отображается хорошо, и никаких ошибок не выдается. Очевидно, я не хочу использовать такую конфигурацию, я хотел бы написать просто mydomain.com

Я пробовал МНОГИЕ другие конфигурации mod_proxy с другими параметрами (ProxyRequests, DefaultType, ProxyPassReverseCookiePath, ProxyPassReverseCookieDomain ...), но ни одна из них, кажется, не работает ...

В чем проблема?

Заранее спасибо за терпение и помощь!

Кстати: я знаю, что Tomcat не должен быть публично разоблачен, я позабочусь об этом позже ...

1 ответ1

0

Добавить RewriteRule

RewriteRule ^/$ /myappname

в сочетании с ProxyPass /myappname .

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .