You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users-de@httpd.apache.org by Christian Fritze <Th...@sprawl.de> on 2003/05/14 15:22:33 UTC

Installationsproblem: mod_webapp und apache 2

Guten Tag allerseits!

Ich versuche gerade mit wachsender Frustration, einen apache 2.0.44
und einen Tomcat 4.0.6 vermittels mod_webapp 1.2.0-dev zu fruchtbarer
Zusammenarbeit zu bewegen. Vielleicht hat ja jemand eine ähnliche
Kombination ans Laufen gekriegt und kann mir weiterhelfen. Vielleicht
bin ich aber auch bloß blind und brauche den 'Schubs' in die richtige
Richtung...

Auf dem Rechner läuft bereits ein apache 2.0.44, der mit 
enable-modules=most und enable-shared=max konfiguriert wurde. 
Im Standalone-Modus läuft auch der Tomcat problemlos. Ich möchte 
aber für einen bestimmten vhost das mod_ssl des Apache benutzen 
und daher Tomcat via webapp ansprechen.

Also:

Ich habe mir den Tarball jakarta-tomcat-connectors-4.0.6-src.tar.gz 
von jakarta.apache.org geholt und anschließend im Unterverzeichnis
webapps './configure --with-apxs=<apache-install-dir>/bin/apxs; make'
ausgeführt, mod_webapp.so ins modules-Verzeichnis des Servers kopiert 
und ein passendes LoadModule-Statement in httpd.conf eingefügt.

Ein HEAD auf den Server liefert mir jetzt auch brav die folgende
Kennung zurück:

Apache/2.0.44 (Unix) mod_ssl/2.0.44 OpenSSL/0.9.7 DAV/2 PHP/4.3.1
mod_webapp/1.2.0-dev 

So weit, so gut. 

In der server.xml meines Tomcat steht nun folgendes:

 <Service name="Tomcat-Apache">

  <Connector 
   className="org.apache.catalina.connector.warp.WarpConnector"
   port="8008" minProcessors="5" maxProcessors="75"
   enableLookups="true" acceptCount="10" debug="0"/>

    <Engine 
     className="org.apache.catalina.connector.warp.WarpEngine"
     name="Apache" defaultHost="www.foo.com" debug="0" 
     appBase="webapps">

      <Logger 
       className="org.apache.catalina.logger.FileLogger"
       prefix="apache_log." suffix=".txt" timestamp="true"/>

      <Realm 
       className="org.apache.catalina.realm.MemoryRealm" />

      <Host  
       className="org.apache.catalina.connector.warp.WarpHost"
       name="localhost" debug="0" appBase="webapps" 
       unpackWARs="true">

        <Context path="" docBase="ROOT" debug="0" />
  
      </Host>

    </Engine>

 </Service>         

Ein Neustart des Tomcat erzeugt nun in $CATALINA_HOME/work/Apache
die gleiche Verzeichnisstruktur wie in $CATALINA_HOME/work/Standalone

Ein 'telnet www.foo.com 8008' läßt den WarpConnector aufwachen und
erzeugt nachvollziehbare Einträge in .../apache_log.2003-05-14.txt:

2003-05-14 15:56:12 [org.apache.catalina.connector.warp.WarpConnector]\
                    Connection from linux.local/###.###.###.###:36044 \
                    to linux.local/###.###.###.###:8008
2003-05-14 15:56:53 [org.apache.catalina.connector.warp.WarpConnection]\
                    Exception on socket
                    java.io.IOException: Premature packet payload end
                    at org.apache.catalina.connector.warp.\
                    WarpConnection.recv(Unknown Source)
                    at org.apache.catalina.connector.warp.\
                    WarpConfigurationHandler.handle(Unknown Source)
                    at org.apache.catalina.connector.warp.\
                    WarpConnection.run(Unknown Source)
                    at java.lang.Thread.run(Thread.java:479)

(Der zwote Eintrag markiert den Abbruch der Verbindung mit '^]quit',
da der Connector mit einem simplen telnet natürlich nichts anfangen
kann.)
                                                        
Sieht doch bis jetzt eigentlich ganz gut aus, oder?

Also zurück zur httpd.conf. Der Abschnitt für den VirtualHost, über 
den ich den Tomcat ansprechen will, enthält (u.a.) die folgenden 
Zeilen:

ServerName www.foo.com # (identisch mit dem defaultHost-Attribut
                       #  des o.g. Engine-Elementes)

<IfModule mod_webapp>
 WebAppConnection FooConnection warp localhost:8008
 WebAppDeploy tomcat-docs FooConnection /tomcat-docs # erster Test
 WebAppInfo /webappinfo
</IfModule>
                          

Wenn ich nun aber versuche, auf http://www.foo.com/tomcat-docs/
zuzugreifen, erhalte ich nur einen Not-Found-Fehler. Der Standalone-
Tomcat liefert unter http://www.foo.com:8100/tomcat-docs/ ohne
Murren die gewünschte Seite.

Bin ich jetzt nur blind oder gibt's da wirklich ein Problem?
Freue mich über jeden sachdienlichen Hinweis, danke im Voraus!


Grüße aus Dortmund
Christian


--
Grüße aus Europas größtem       Greetings from Europe's largest
Urban Sprawl (DUDOMA -- Duisburg Dortmund Metropolitan Axis ;-)
Christian Fritze   <Th...@sprawl.de>   http://www.sprawl.de/


--------------------------------------------------------------------------
                Apache HTTP Server Mailing List "users-de" 
      unsubscribe-Anfragen an users-de-unsubscribe@httpd.apache.org
           sonstige Anfragen an users-de-help@httpd.apache.org
--------------------------------------------------------------------------


Re[2]: Installationsproblem: mod_webapp und apache 2

Posted by Christian Fritze <Th...@sprawl.de>.
On Wed, 14 May 2003 16:29:57 +0200 Oliver Etzel - GoodnGo.COM (R) <ol...@goodngo.com> wrote:

OE-G(> Hallo Christian,
OE-G(> 
OE-G(> kleine Frage am Rande, Was ist denn mod_webapp?

Schade, ich hatte schon auf eine schnelle Antwort gehofft... 

Nun, Tomcat ist in erster Linie ein Servlet Container, der 
*auch* HTTP-Requests beantworten kann, in diesem Kontext aber 
weniger Features bietet als der 'große' Apache. Man kann nun
seine Servlets / JSP-Seiten entweder direkt von Tomcat ausliefern
lassen oder aber die Requests durch einen Apache 'tunneln'.
Dabei sieht der Nutzer von außen nur den Apache und weiß nichts
über den dahinter stehenden Servlet Container. Damit das klappt,
braucht man einen Connector wie z.B. webapp. Das Ding besteht 
aus einem Apache-Modul (mod_webapp.so) und einigen Java-Klassen
(Package org.apache.catalina.connector.warp), die miteinander
reden. Ich verspreche mir davon etwas mehr Konsistenz bei der
Konfiguration und beim Logging in einer Installation mit mehreren
VirtualHosts. Außerdem ist es irgendwie ziemlich häßlich, dem 
Tomcat SSL-Zertifikate beizubiegen, deren Signing Requests mit 
openssl erstellt worden sind (keine Ahnung wieso...), mit 
mod_webapp würde dann nur die Verbindung zwischen Client und 
Apache verschlüsselt werden, während Apache und Tomcat ohne 
Verschlüsselung miteinander reden (was aber kein Problem sein
sollte, da sie auf demselben Rechner laufen).


Grüße aus Dortmund
Christian


--
Grüße aus Europas größtem       Greetings from Europe's largest
Urban Sprawl (DUDOMA -- Duisburg Dortmund Metropolitan Axis ;-)
Christian Fritze   <Th...@sprawl.de>   http://www.sprawl.de/


--------------------------------------------------------------------------
                Apache HTTP Server Mailing List "users-de" 
      unsubscribe-Anfragen an users-de-unsubscribe@httpd.apache.org
           sonstige Anfragen an users-de-help@httpd.apache.org
--------------------------------------------------------------------------


Re: Installationsproblem: mod_webapp und apache 2

Posted by "Oliver Etzel - GoodnGo.COM (R)" <ol...@goodngo.com>.
Hallo Christian,

kleine Frage am Rande, Was ist denn mod_webapp?


>>-Modus läuft auch der Tomcat problemlos. Ich möchte
aber für einen bestimmten vhost das mod_ssl des Apache benutzen
und daher Tomcat via webapp ansprechen.


--------------------------------------------------------------------------
                Apache HTTP Server Mailing List "users-de" 
      unsubscribe-Anfragen an users-de-unsubscribe@httpd.apache.org
           sonstige Anfragen an users-de-help@httpd.apache.org
--------------------------------------------------------------------------