Tomcat mit mod_proxy über apache2 laufen lassen

Erste Frage wäre wohl wieso? Na ja, ich dachte da an den konkreten Fall in dem wir einen billigen VServer haben mit einer IP. Ein paar Webseiten über den apache laufen haben und nun auch noch einen tomcat am Start haben.

Im normal Fall lassen wir den apache auf Port 80 und werfen den tomcat auf 8080 oder so was.

Aber unsere Leser / Benutzer checken das mit den Ports nicht und Links mit einem Port versehen macht auf die Dauer auch keinen Spaß.

Tomcat

Den Tomcat konfigurieren wir wie immer, mit dem netten Unterschied das wir den nur noch auf „localhost“ benötigen. Wichtig ist jetzt das wir im Connector folgenden Zusatz einbauen:

<Connector port=“8080″ … proxyName=“www.mycompany.com“ proxyPort=“80″/>

Angepasst auf die Domain die wir nutzen werden. Unter Pfad für die webapp geben wir „/examples“ in unserem Testfall ein.

Apache2

Wenn wir einen einzelnen Tomcat an unserem Apache hängen haben, hält sich das alles relativ einfach und sieht dann so aus:

<Location /examples/>

ProxyPass http://localhost:8080/examples/

ProxyPassReverse http://localhost:8080/examples/

</Location>

Und jetzt sollte das Ding sichtbar sein unter www.mycompany.com/examples … vorrausgesetzt ihr habt das mod_proxy modul auf Eurem apache natürlich aktiviert.

2 Gedanken zu „Tomcat mit mod_proxy über apache2 laufen lassen“

  1. Eine Frage: Der erste Teil der Konfiguration kommt in der server.xml im tomcat/conf Verzeichnis, aber wohin kommt der zweite Teil? In die httpd.conf? Letztere Datei finde ich bei mir auf dem System auch nicht…habe schon mit find / -name httpd.conf gesucht.

    • Hallo Daniel,

      Den kannst du an einige Stellen setzen. Jetzt kommt es darauf an welche System, welche Version, welcher Setup. Aber bleiben wir bei der einfachen Variante.

      Du hast http://www.meinesite.de da sitze deine Website … also soll unter http://www.meinesite.de/examples dein Tomcat aufkreuzen. Also einfach gleich in die conf für die Apache Site mit aufnehmen. Also DA wo du definierst was passiert wenn jemand http://www.meinesite.de aufruft.

      Beim apache höchst wahrscheinlich unter /etc/apache2/sites-enabled/meinesite.de (oder wie du die conf genannt hast).

Kommentare sind geschlossen.