Tomcat 4.x mit Apache + VirtualHost

Apache, Lighttpd, nginx, Cherokee
Post Reply
tstening
Posts: 21
Joined: 2002-11-30 17:26
Location: Würzburg
 

Tomcat 4.x mit Apache + VirtualHost

Post by tstening »

Hallo alle zusammen,

bisher habe ich Apache 1.3 zusammen mit Tomcat 3.3.1 verwendet. Jetzt muss ich auf einen aktuellen Tomcat updaten. Also habe ich eine aktuelle Tomcat-Distribution genommen und entpackt. Mir stellt sich nun aufgrund der veränderten Struktur der Verzeichnisse die Frage, wie man einen Context für eine Webanwendung definiert?

Unter dem alten Tomcat habe ich bisher folgendes gemacht:

In /etc/httpd/httpd.conf steht

<VirtualHost myIP>
DocumentRoot /tomcat/html/myWebApp
ServerName http://www.mydomain.de
JKMount /* ajp13
</VirtualHost>

Dazu passend steht in /tomcat/conf/apps-all.xml folgendes:

<Host name="www.mydomain.de">
<Context path="/" docBase="html/myWebApp" debug="0" reloadable="false" />
</Host>

Nun suche ich nach einer Möglichkeit, dies in einem aktuellen 4er Tomcat zu bewerkstelligen?

Bis jetzt habe ich folgendes angepasst:

in /etc/httpd/httpd.conf habe ich den Pfad zur neuen workers.properties angepasst. Diese liegt unter /tomcat4/conf/ und hat folgenden Inhalt:

workers.tomcat_home=/tomcat4
workers.java_home=/usr/lib/java
ps=/
worker.list=ajp13
worker.ajp13.port=8009
worker.ajp13.host=localhost
worker.ajp13.type=ajp13
worker.ajp13.lbfactor=1

Weiterhin habe ich die VirtualHost-Angabe so geändert:

<VirtualHost myIP>
DocumentRoot /tomcat4/webapps/myWebApp
ServerName http://www.mydomain.de
JKMount /* ajp13
</VirtualHost>

Wo bzw. wie muss ich nun den Context setzen? Wo kommt der Inhalt aus der apps-all.xml hin? Ich bin da nun etwas ratlos. Habe mir auch schon folgende Seite angesehen, komme aber damit auch nicht wirklich weiter: http://jakarta.apache.org/tomcat/tomcat ... howto.html

Hat jemand eine Idee, was ich wo einstellen muss?

Viele Grüße,
Tobias
majortermi
Userprojekt
Userprojekt
Posts: 916
Joined: 2002-06-17 16:09
 

Re: Tomcat 4.x mit Apache + VirtualHost

Post by majortermi »

Die Tomcat 4 Konfiguration hat etwa folgenden Aufbau:

Code: Select all

<Server>
 <Service>
  <Connector>
   <Engine>
    <Host>
     <Context/>
    </Host>
   </Engine>
  </Connector>
 </Service>
<Server>
Meine Konfiguration (für einen Tomcat der nur über AJP ansprechbar ist) sieht z.B. folgendermaßen aus:

Code: Select all

<Server port="8005" shutdown="SHUTDOWN" debug="0">
   <Service name="Tomcat-Standalone">
      <Connector className="org.apache.ajp.tomcat4.Ajp13Connector" enableLookups
="false" port="8009" acceptCount="100" minProcessors="100" maxProcessors="500" d
ebug="0"/>
      <Engine name="Standalone" debug="0" defaultHost="admcore.thor.local.XXXXXXX.com" jvmRoute="foo">
         <Logger className="org.apache.catalina.logger.FileLogger" prefix="catal
ina_log." suffix=".txt" timestamp="true"/>
         <Host debug="0" name="pfixgb.thor.local.XXXXXXX.com">
            <Alias>pfixgb.thor</Alias>
            <Valve className="org.apache.catalina.valves.AccessLogValve" directo
ry="logs" prefix="access_log." suffix=".txt" pattern="common"/>
            <Logger className="org.apache.catalina.logger.FileLogger" directory=
"logs" prefix="log." suffix=".txt" timestamp="true"/>
            <Context path="/xml" debug="0" crossContext="true" cookies="false" d
ocBase="/home/sebmar/pfix-test/projects/servletconf/tomcat/webapps/pfixgb"/>
         </Host>
         <Host debug="0" name="cmsskel.thor.local.XXXXXXX.com">
            <Alias>cmsskel.thor</Alias>
            <Valve className="org.apache.catalina.valves.AccessLogValve" directo
ry="logs" prefix="access_log." suffix=".txt" pattern="common"/>
            <Logger className="org.apache.catalina.logger.FileLogger" directory=
"logs" prefix="log." suffix=".txt" timestamp="true"/>
            <Context path="/xml" debug="0" crossContext="true" cookies="false" d
ocBase="/home/sebmar/pfix-test/projects/servletconf/tomcat/webapps/cmsskel"/>
         </Host>
         <Host debug="0" name="admskel.thor.local.XXXXXXX.com">
            <Alias>admskel.thor</Alias>
            <Valve className="org.apache.catalina.valves.AccessLogValve" directo
ry="logs" prefix="access_log." suffix=".txt" pattern="common"/>
            <Logger className="org.apache.catalina.logger.FileLogger" directory=
"logs" prefix="log." suffix=".txt" timestamp="true"/>
            <Context path="/xml" debug="0" crossContext="true" cookies="false" d
ocBase="/home/sebmar/pfix-test/projects/servletconf/tomcat/webapps/admskel"/>
         </Host>
      </Engine>
   </Service>
</Server>
Erst nachlesen, dann nachdenken, dann nachfragen... :)
Warum man sich an diese Reihenfolge halten sollte...
tstening
Posts: 21
Joined: 2002-11-30 17:26
Location: Würzburg
 

Re: Tomcat 4.x mit Apache + VirtualHost

Post by tstening »

Danke für den Tipp!

Hmm, das heisst also, dass ich den Context in der server.xml setzen muss. Mir sind in diesem Zusammnehang noch zwei Dateien aufgefallen, die ebenfalls einen Context für die Manager-App und Admin-App setzen. Das ist einerseits die admin.xml und andererseits die manager.xml. Die liegen beide in /webapps.

Woher weiss Tomcat, dass er die beiden Dateien verwenden soll? Habe in keiner Konfigurationsdatei einen HInweis auf die beiden Dateien gefunden.

BTW: Was sollte man eigentlich zuerst starten? Apache oder Tomcat?

Viele Grüße,
Tobias :-)
majortermi
Userprojekt
Userprojekt
Posts: 916
Joined: 2002-06-17 16:09
 

Re: Tomcat 4.x mit Apache + VirtualHost

Post by majortermi »

tstening wrote:Mir sind in diesem Zusammnehang noch zwei Dateien aufgefallen, die ebenfalls einen Context für die Manager-App und Admin-App setzen. Das ist einerseits die admin.xml und andererseits die manager.xml. Die liegen beide in /webapps.
Das scheint irgendwie ein Spezialfall zu sein.
Im Prinzip gilt: Hosts und Contexts werden in der server.xml definiert.
BTW: Was sollte man eigentlich zuerst starten? Apache oder Tomcat?
Das ist eigentlich egal.
Erst nachlesen, dann nachdenken, dann nachfragen... :)
Warum man sich an diese Reihenfolge halten sollte...
Post Reply