Tomcat parallel zu Apache
Tomcat parallel zu Apache
Hallo zusammen,
auf meinem Server läuft Apache als Webserver.
Damit ich mit Servlets und JSPs arbeiten kann, würde ich gerne Tomcat parallel zum Apache installieren.
Gibt es dabei etwas bestimmtes zu beachten? Hat eventuell jemand ein Howto/Tutorial dazu?
Vielen Danke!
Michael
auf meinem Server läuft Apache als Webserver.
Damit ich mit Servlets und JSPs arbeiten kann, würde ich gerne Tomcat parallel zum Apache installieren.
Gibt es dabei etwas bestimmtes zu beachten? Hat eventuell jemand ein Howto/Tutorial dazu?
Vielen Danke!
Michael
Re: Tomcat parallel zu Apache
Ne i.d.R. geht das sehr gut. Am besten den Tomcat nicht direkt ansprechen lassen, sondern mit dem mod_jk2 durch den Apache ansprechen. Dann hast du nur einen Einstiegspunkt von außen.
Re: Tomcat parallel zu Apache
kenn mich leider mit dem apache noch nicht gut aus!
kann ich diesen mod einfach installieren und fertig?
kann ich diesen mod einfach installieren und fertig?
-
Roger Wilco
- Posts: 5923
- Joined: 2004-05-23 12:53
Re: Tomcat parallel zu Apache
http://www.howtoforge.com/apache2_tomcat5_mod_jkbjmicha wrote:Hat eventuell jemand ein Howto/Tutorial dazu?
Re: Tomcat parallel zu Apache
Ein Blick hier in die FAQ hätte Dich zu diesem Tutorial geführt:
http://www.rootforum.org/faq/1_155_de.html
Leider haben es die Admin nach knapp 1,5 Jahren immer noch nicht hinbekommen den Code richtig darzustellen. Bei Fragen, einfach hier in diesem Thread posten...
http://www.rootforum.org/faq/1_155_de.html
Leider haben es die Admin nach knapp 1,5 Jahren immer noch nicht hinbekommen den Code richtig darzustellen. Bei Fragen, einfach hier in diesem Thread posten...
Re: Tomcat parallel zu Apache
Hallo,
habe den Tomcat jetzt installiert bekommen und er läuft auch.
Problem ist jetzt das der Apache nicht mehr richtig läuft. Es werden anscheinend alle URLs an den Tomcat weitergeleitet, obwohl ich in der httpd.conf nur bestimmt JkMounts eingetragen habe.
Wo sind denn genau die Punkte/Dateien in denen ich festlege welche URLs an den Tomcat geroutet werden?
Danke!
Michael
habe den Tomcat jetzt installiert bekommen und er läuft auch.
Problem ist jetzt das der Apache nicht mehr richtig läuft. Es werden anscheinend alle URLs an den Tomcat weitergeleitet, obwohl ich in der httpd.conf nur bestimmt JkMounts eingetragen habe.
Wo sind denn genau die Punkte/Dateien in denen ich festlege welche URLs an den Tomcat geroutet werden?
Danke!
Michael
Re: Tomcat parallel zu Apache
Bei Apache2/mod_jk2 werden die Mounts nicht mehr in der httpd.conf sondern in der worker2.properties eingetragen wenn ich korrekt im Kopf hab. Ansonsten können wir hier auch nur raten, wenn du keine Config Dateien und/oder Logfiles zur Verfügung stellst.
Re: Tomcat parallel zu Apache
das o.g. Tutorial beschreibt aber die Verbindung via mod_jk nicht mod_jk2. Dort kann man nicht wie in der workers2.properties die URL's spezifizieren (afaik)...
Re: Tomcat parallel zu Apache
hier mal die relevanten Teile aus den Config-Files!
httpd.conf
workers.properties
mod_jk.conf (wird automatisch beim Tomcat start erstellt)
[/code]
server.xml
httpd.conf
Code: Select all
# include tomcat config file
Include /usr/local/src/apache-tomcat-5.5.16/conf/auto/mod_jk.conf
# Where to find worker.properties
JkWorkersFile /etc/apache2/workers.properties
# Where to put jk logs
JkLogFile /var/log/apache2/mod_jk.log
# Set the jk log level [debug/error/info]
JkLogLevel info
# Select the log Format
JkLogStampFormat "[%a %b %d %H:%M:%S %Y] "
# JkOptions indicate to send SSL KEY SIZE
JkOptions +ForwardKeySize +ForwardURICompat -ForwardDirectories
# JkRequestLogFormat set the request format
JkRequestLogFormat "%w %V %T"
#Globally deny access to the WEB-INF directory
<LocationMatch '.*WEB-INF.*'>
AllowOverride None
deny from all
</LocationMatch>
#VHOST bjmicha.com
<VirtualHost *:80>
[...]
JkMount /*/servlet/* worker1
JkMount /*.jsp worker1
</VirtualHost>Code: Select all
workers.tomcat_home=/usr/lib/apache-tomcat
workers.java_home=/usr/lib/jdk
ps=/
worker.list=worker1
worker.worker1.port=8009
worker.worker1.host=localhost
worker.worker1.type=ajp13
worker.worker1.lbfactor=1
worker.loadbalancer.type=lb
worker.loadbalancer.balanced_workers=worker1
worker.inprocess.type=jni
worker.inprocess.class_path=$(workers.tomcat_home)$(ps)lib$(ps)tomcat.jar
worker.inprocess.cmd_line=start
worker.inprocess.jvm_lib=$(workers.java_home)$(ps)jre$(ps)lib$(ps)
i386$(ps)classic$(ps)libjvm.so
worker.inprocess.stdout=$(workers.tomcat_home)$(ps)logs$(ps)inprocess.stdout
worker.inprocess.stderr=$(workers.tomcat_home)$(ps)logs$(ps)inprocess.stderrCode: Select all
########## Auto generated on Wed Mar 08 22:15:56 CET 2006##########
<IfModule !mod_jk.c>
LoadModule jk_module "/usr/lib/apache/mod_jk.so"
</IfModule>
JkWorkersFile "/etc/apache2/workers.properties"
JkLogFile "/usr/local/src/apache-tomcat-5.5.16/logs/mod_jk.log"
JkLogLevel emerg
<VirtualHost localhost>
ServerName localhost
JkMount /webdav ajp13
JkMount /webdav/* ajp13
JkMount /servlets-examples ajp13
JkMount /servlets-examples/* ajp13
JkMount /jsp-examples ajp13
JkMount /jsp-examples/* ajp13
JkMount /balancer ajp13
JkMount /balancer/* ajp13
JkMount /host-manager ajp13
JkMount /host-manager/* ajp13
JkMount /tomcat-docs ajp13
JkMount /tomcat-docs/* ajp13
JkMount /manager ajp13
JkMount /manager/* ajp13
</VirtualHost>
<VirtualHost bjmicha.com>
ServerName bjmicha.com]
JkMount /fotos ajp13
JkMount /fotos/* ajp13
JkMount /jsp ajp13
JkMount /jsp/* ajp13
JkMount /cgi-bin ajp13
JkMount /cgi-bin/* ajp13
JkMount /secure ajp13
JkMount /secure/* ajp13
JkMount /ssl ajp13
JkMount /ssl/* ajp13
JkMount /cms ajp13
JkMount /cms/* ajp13
JkMount /report ajp13
JkMount /report/* ajp13
</VirtualHost>server.xml
Code: Select all
<Server port="8005" shutdown="SHUTDOWN">
<Listener className="org.apache.catalina.mbeans.GlobalResourcesLifecycleListener" />
<Listener className="org.apache.catalina.storeconfig.StoreConfigLifecycleListener"/>
<!-- Global JNDI resources -->
<GlobalNamingResources>
<!-- Test entry for demonstration purposes -->
<Environment name="simpleValue" type="java.lang.Integer" value="30"/>
<!-- Editable user database that can also be used by
UserDatabaseRealm to authenticate users -->
<Resource name="UserDatabase" auth="Container"
type="org.apache.catalina.UserDatabase"
description="User database that can be updated and saved"
factory="org.apache.catalina.users.MemoryUserDatabaseFactory"
pathname="conf/tomcat-users.xml" />
</GlobalNamingResources>
<!-- Define the Tomcat Stand-Alone Service -->
<Service name="Catalina">
<!-- A "Connector" represents an endpoint by which requests are received
and responses are returned. Each Connector passes requests on to the
associated "Container" (normally an Engine) for processing.
-->
<!-- Define a non-SSL HTTP/1.1 Connector on port 2117 (default 8080) -->
<Connector port="2117" maxHttpHeaderSize="8192"
maxThreads="150" minSpareThreads="5" maxSpareThreads="75"
enableLookups="false" redirectPort="8443" acceptCount="100"
connectionTimeout="20000" disableUploadTimeout="true" />
<!-- Define an AJP 1.3 Connector on port 8009 -->
<Connector port="8009"
enableLookups="false" redirectPort="8443" protocol="AJP/1.3" />
<!-- Define a Proxied HTTP/1.1 Connector on port 8082 -->
<!-- See proxy documentation for more information about using this. -->
<!--
<Connector port="8082"
maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
enableLookups="false" acceptCount="100" connectionTimeout="20000"
proxyPort="80" disableUploadTimeout="true" />
-->
<!-- An Engine represents the entry point (within Catalina) that processes
every request. The Engine implementation for Tomcat stand alone
analyzes the HTTP headers included with the request, and passes them
on to the appropriate Host (virtual host). -->
<!-- Define the top level container in our container hierarchy -->
<Engine name="Catalina" defaultHost="localhost">
<Realm className="org.apache.catalina.realm.UserDatabaseRealm"
resourceName="UserDatabase"/>
<!-- Define the default virtual host -->
<Host name="localhost" appBase="webapps"
unpackWARs="true" autoDeploy="true"
xmlValidation="false" xmlNamespaceAware="false">
<Valve className="org.apache.catalina.valves.AccessLogValve"
directory="logs" prefix="localhost_access_log." suffix=".txt"
pattern="common" resolveHosts="false"/>
</Host>
<!-- www.domain1.com -->
<Host name="www.bjmicha.com" appBase="/home/b/bjmicha.com/public_html"
unpackWARs="true" autoDeploy="true">
<Context path="" docBase="jsp-examples" debug="0" reloadable="true"/>
<Valve className="org.apache.catalina.valves.AccessLogValve"
directory="logs" prefix="web1_access_log." suffix=".txt"
pattern="common" resolveHosts="false"/>
</Host>
<Listener className="org.apache.jk.config.ApacheConfig"
modJk="/usr/lib/apache/mod_jk.so"
workersConfig="/etc/apache2/workers.properties"/>
</Engine>
</Service>
</Server>es klappt fast
So, ich habe es jetzt fast hinbekommen!
Der Hautpfehler war, das ich die AutoConfig Funktion aktiviert hatte. Dadurch wurde dann alles automatisch an den Tomcat geroutet!
Ein Problem habe ich aber noch. Wenn ich meine JkMount Einträge in der httpd.conf mache, erkennt Apache die anscheinent nur wenn ich sie außerhalb eines Virtuelles Hosts mache. Ich will aber für jeden virtuellen Host gesonderte Einstellungen machen was an den Tomcat geroutet werden soll.
Hier ein Auszug aus der httpd.conf:
Was mache ich da falsch? Eigentlich will ich das bei dem virtuellen Host alle Dateien mit Endung .jsp an den Tomcat geroutet werden.
Der Hautpfehler war, das ich die AutoConfig Funktion aktiviert hatte. Dadurch wurde dann alles automatisch an den Tomcat geroutet!
Ein Problem habe ich aber noch. Wenn ich meine JkMount Einträge in der httpd.conf mache, erkennt Apache die anscheinent nur wenn ich sie außerhalb eines Virtuelles Hosts mache. Ich will aber für jeden virtuellen Host gesonderte Einstellungen machen was an den Tomcat geroutet werden soll.
Hier ein Auszug aus der httpd.conf:
Code: Select all
<VirtualHost *:80>
php_admin_value open_basedir /home/b/bjmicha.com/public_html/:/usr/local/lib/php:/tmp
DocumentRoot /home/b/bjmicha.com/public_html/
ServerName www.bjmicha.com
IndexOptions
DirectoryIndex index.htm index.html index.shtml start.htm start.html start.shtml index.php index.php3
ServerAlias bjmicha.com bjmichacom.h625965.serverkompetenz.net *.bjmicha.com bjmicha.de *.bjmicha.de
CustomLog "|/usr/local/visas/cronolog/cronolog --symlink=/usr/local/visas/logfiles/bjmicha.com/access_log --prev-symlink=/usr/local/visas/logfiles/bjmicha.com/current_access_log /usr/local/visas/logfiles/bjmicha.com/%Y/%m/%d/access_log" combined
SuexecUserGroup bjmichacom www
ScriptAlias /cgi-bin/ /home/b/bjmicha.com/public_html/cgi-bin/
JkMount /*.jsp ajp13