Добавить RewriteRule
RewriteRule ^/$ /myappname
в сочетании с ProxyPass /myappname
.
У меня есть домен с правильно настроенными 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 не должен быть публично разоблачен, я позабочусь об этом позже ...
Добавить RewriteRule
RewriteRule ^/$ /myappname
в сочетании с ProxyPass /myappname
.