Apache – Tomcat: Tomcat-Worker Verwendung in VHosts

Hat man nun alles dementsprechende konfiguriert, kann man in jeden X-beliebigen VHost darauf zugreifen. Dazu gibt man entweder „jkmount“ an, um Pfade auf einen Tomcat-Worker/Balancer zu lenken oder „jkunmount“ um bestimmt Pfade genau davon auszuschließen. Bei den Mount-Direktiven kann man Pfade, Dateien, Dateipfade oder Pattern angeben. Man kann also sagen „jkmount / WorkerName“ um alles dieser Domain ab dem Root auf den Tomcat „WorkerName“ zu lenken. Also die Syntax ist bei beiden Direktiven immer gleich „Kommando Pattern Tomcat“. Möglich wäre also z.B. auch „jkmount /cms/*.html WorkerName“ und „jkunmount /*.php“. Das erst besagt, das alle Requests auf HTMLs unterhalb von „/cms“ an dem Tomcat gesendet werden sollen und das andere, das alle Requests auf PHP-Dateien nicht an an den Tomcat gesendet werden.

 

Apache – Tomcat: mod_jk.conf

In der mod_jk.conf (manchmal auch nur jk.conf) kann man noch zusätzliche Parameter setzen um das Verhalten des Moduls zu beeinflussen. Unter anderem wird hier festgelegt wo das „jk-workers-properties“-File liegt. Dies kann man hier nämlich mit dem Parameter „JkWorkersFile“ festlegen. JkShmFile beschreibt wo die Datei für den „shared memory“ für Balancer ist. Dies wird benutzt damit der Balancer seine Worker dirigieren kann. Sollte laut Doku nicht auf einen NFS-Share liegen. Normalerweise liegt es immer unter „/var/log/apache2/“. Weiterhin kann man sonst noch festlegen wo die eigentliche log-Datei liegen soll. Deren Log-Level und das Logformat lässt sich auch noch festlegen. Abschließend kann man mit „JkOptions“ noch verschiedene Optionen zur Kompatibilität zwischen Apache und Tomcat setzten. Zum Beispiel das der SSL- Header mit gesendet werden soll oder wir URIs weitergegeben werden.

 

Apache – Tomcat: jk-workers.properties

Hier werden wie weiter oben schon besprochen Worker und Balancer konfiguriert. Am Anfang der Datei gibt es eine sogenannte „worker.list“. Alles was hierin aufgelistet wird, ist dem Apache2 später auch bekannt. Darunter folgt dann meist die Konfiguration der einzelnen Worker und Balancer. Wobei ein Balancer auch nur eine Art Worker ist. Ein Worker ist einfach nur die Beschreibung eines Tomcats. Dabei lässt er sich mit 3 Zeilen abbilden. Man gibt mit „worker.Name.port“ den AJP-Connector Port an , mit „worker.Name.host“ den Hostnamen oder die IP und mit „worker.Name.type“ noch den Typ an. Beim Typ kann man entweder „ajp13“ oder „lb“ angeben. Wobei „lb“ dann für Load Balancer steht und „ajp13“ für einen normalen Worker. Der „Name“ im mittleren Teil der 3 Parameter sollte im dem der JVMRoute aus dem Engine-Tag der Server.xml des Tomcats entsprechen. Im Eigentlich ist dies aber nur wichtig, wenn man einen LB aufbauen möchte. Da so der Apache2 genau die Tomcats unterschieden kann. Hat man also diese 3 Parameter, hat man auch schon einen Worker, diesen fügt man dann noch der am Anfang erwähnten „worker.list“ hinzu. Einfach den Namen des Worker dort eintragen in einer Komma-separierten Liste. Anschließend dann noch „/etc/init.d/apache2 reload“. Damit ist ein Worker eingerichtet. Apache – Tomcat: jk-workers.properties weiterlesen

Allgemeines zur Apache2-Konfiguration

Aufbau des Konfigurationsverzeichnisses:

/etc/apache2/
|——–> conf.d/
|——–> Mods-available/
|——–> Mods-enabled/
|——–> Sites-available/
|——–> Sites-enabled/
|——–> ssl/
|——–> apache2.conf
|——–> envvars
|——–> httpd.conf
|——–> jk-workers.properties
|——–> ports.conf

 

In der obigen Abbildung ist der Standardaufbau des Apache-Konfigurationsverzeichnisses zu sehen. Die Einzelnen Punkt werden nun im Folgenden durchgegangen. Sie werden der Rehe nach von oben nach unten durchgegangen.

Allgemeines zur Apache2-Konfiguration weiterlesen

mod_fcgid für Apache 2.2

Vorbereitungen:
Ich gehe hierbei davon aus, das PHP5 und Apache bereits installiert sind und schon funktionieren. Wichtig ist noch das bei PHP5 das CGI wie das CLI Modul mit installiert sind. Sonst klappt das ganze nicht. Sind sie das noch nciht installieren wir diese mit apt-get nach: mod_fcgid für Apache 2.2 weiterlesen