Umleitung von Apache zu Tomcat mit mod_proxy

376
Jesus Schneider

Ich habe eine Domäne mit korrekt konfigurierten DNS-Namen namens mydomain.com, die auf meinen Ubuntu 16.04.3-Server in 11.11.11.11 verweist. Wenn ich also mydomain.com in einem Browser einführe, komme ich zur Standardseite des in einem solchen Server installierten Apache .

Ich habe auch einen Tomcat 7 auf demselben Server installiert, auf dem eine JSF- APP ausgeführt wird. Wenn ich also http://11.11.11.11:8080/myappname/ in meinem Browser einführe, wird meine APP im Browser angezeigt.

Ich möchte von Apache zu meinem Tomcat umleiten, so dass jedes Mal, wenn jemand mydomain.com in seinen Browser schreibt, meine APP erscheint.

Zu diesem Zweck habe ich mod_proxy gemäß vielen Tutorials installiert und konfiguriert, die ich gelesen habe (wie dieses oder jenes andere ). Meine Konfiguration in der .CONF-Datei der Apache-Standard-Site lautet:

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

Bei dieser Konfiguration wird jedes Mal, wenn ich mydomain.com in den Browser schreibe, die Hauptseite meiner JSF- APP angezeigt, ABER IN EINFACHEM TEXT OHNE BILDER / CSS und einer beliebigen URL oder einer Funktion von DYNAMIC PART WORKS.

Wenn ich den Abschnitt "Leistung" in Mozilla-Tools durchchecke, kann ich eine Reihe von Fehlern wie diese sehen:

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] 

Auf der anderen Seite habe ich das mit dieser config entdeckt:

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

Jedes Mal, wenn ich in meinem Browser mydomain.com/myappname schreibe, wird die Seite gut angezeigt und es wird kein Fehler ausgegeben . Natürlich möchte ich diese Konfiguration nicht verwenden, ich möchte JUST mydomain.com schreiben

Ich habe viele andere mod_proxy-Konfigurationen mit anderen Parametern (ProxyRequests, DefaultType, ProxyPassReverseCookiePath, ProxyPassReverseCookieDomain ...) ausprobiert, aber keiner von ihnen scheint zu funktionieren ...

Worin besteht das Problem?

Vielen Dank im Voraus für Ihre Patienten und Hilfe!

BTW: Ich weiß, dass Tomcat nicht öffentlich ausgestellt werden sollte, ich werde mich später darum kümmern ...

0

1 Antwort auf die Frage

0
Gerard H. Pille

Fügen Sie eine RewriteRule hinzu

RewriteRule ^/$ /myappname 

in Kombination mit dem ProxyPass /myappname.