Hallo,

ich möchte auf einem ubuntu-Server (8.04) gern folgenden End-Aufbau umsetzen:

- Apache Tomcat mit verschiedenen deployten Web-Apps jeweils erreichbar unter eigenen URLs ("[domain]/abc", "[domain]/xyz", ...) - Apache httpd mit verschiedenen Standard-php-Seiten jeweils erreichbar unter eigenen URLs ("[domain]/0815", "[domain]/4711", ...) - Apache httpd als "Einstiegspunkt" für den http-Zugriff auf alle (tomcat + httpd) URLs auf port 80 - die verschiedenen Anwendungen unter ihren jeweiligen URLs möchte ich teilweise öffentlich verfügbar machen und den Rest mittels login/password sichern.

Da ich mit dem Apache httpd noch nicht sehr bewandert bin, habe ich es erst einmal schrittweise versucht. Folgendes habe ich derzeit am laufen:

- tomcat ist installiert und läuft auf port 8080
- tomcatläuft im Moment noch als root, soll aber später einen eigenen user und eine eigene group bekommen
- tomcat manager mittels "tomcat-users.xml" auf myuser eingeschränkt
- tomcat Web-Apps sind auf dem tomcat-port 8080 erreichbar und funktionieren

- Apache httpd ist installiert und läuft auf port 80
- mediawiki ist installiert und mittels "/alias" eingebunden

- mittels mod_jk einen worker eingerichtet:

# the list of workers
worker.list= tomcatworker

worker.tomcatworker.type=ajp13
worker.tomcatworker.port=8009
worker.tomcatworker.host="meine ip"
worker.tomcatworker.socket_keepalive=true


und darauf gemappt:

# Where to find workers.properties
# Update this path to match your conf directory location (put workers.properties next to httpd.conf)
JkWorkersFile /opt/tomcat/conf/workers.properties

# Where to put jk shared memory
# Update this path to match your local state directory or logs directory
JkShmFile     /var/log/apache2/mod_jk.shm

# Where to put jk logs
# Update this path to match your logs directory location (put mod_jk.log next to access_log)
JkLogFile     /var/log/apache2/mod_jk.log

# Set the jk log level [debug/error/info]
JkLogLevel    info

# Select the timestamp log format
JkLogStampFormat "[%a %b %d %H:%M:%S %Y] "

# Send everything for context /examples to worker named tomcatworker(ajp13)
JkMount  /nexus-webapp-1.2.1* tomcatworker
JkMount  /manager* tomcatworker
JkMount  / tomcatworker


Bis hierher funktioniert alles ganz prima. Ich kann das wiki und die tomcat web-apps auf port 80 erreichen.

Jetzt würde ich gern im nächsten Schritt alle Zugriffe absichern. Dazu habe ich in der "/etc/apache2/httpd.conf" folgendes eingetragen:

<Location />
  AuthType basic
  AuthName "private area"
  AuthBasicProvider file
  AuthUserFile /etc/apache2/dav_svn.passwd
  Require user myuser
</Location>

Zuerst die gute Nachricht: wenn ich jetzt eine URL des Servers aufrufe muss ich mich mit myuser authentifizieren. Das funktioniert gut.


Nun folgt jedoch ein Problem: wenn ich auf den tomcat manager zugreifen will, fragt mich dieser ebenfalls nach seinem user (auch "myuser" aus der "tomcat-users.xml" aber ein anderes Passwort). Allerdings geht es dann nicht mehr weiter: es kommt keine Antwort mehr. Manchmal werde ich wieder nach dem httpd login gefragt.

Die zweite auf dem tomcat laufende webapp verwendet eine Ajax basierte eigene Anmeldung. Seltsamerweise kann ich mich dort ebenfalls nicht mehr mit den korrekten Login-Daten anmelden.

So recht habe ich aber nicht verstanden, woran das liegen könnte. Für Tips wäre ich sehr dankbar.

Schönen Gruß,
Lars


--------------------------------------------------------------------------
Apache HTTP Server Mailing List "users-de" unsubscribe-Anfragen an [email protected]
          sonstige Anfragen an [email protected]
--------------------------------------------------------------------------

Antwort per Email an