Installation von Railo mit Tomcat und Apache unter Debian Linux (Teil 1)

Folgende Anleitung soll Euch helfen, Websites mit der kostenlosen Alernative zu Adobe Coldfusion Railo unter Debian zusammen mit Tomcat und Apache zu servieren. 

Als erstes wird ein Java benötigt, falls das noch nicht zur Verfügung steht. Dies sollte problemlos mittels folgendem Befehle machbar sein:

sudo apt-get install sun-java6-jdk

Als nächstes holen wir den Tomcat und entpacken ihn, bei mir aktuell war die Version 6.0.20 (die neueste Version solltet Ihr jeweils unter http://tomcat.apache.org/download-60.cgi finden)

wget http://apache.mirror.digionline.de/tomcat/tomcat-6/v6.0.20/bin/
apache-tomcat-6.0.20.tar.gz
tar zfvx apache-tomcat-6.0.20.tar.gz

Nach dem Download per wget wird der Tomcat in ein permanentes Verzeichnis verschoben, zum Beispiel so:

mv apache-tomcat-6.0.20 /usr/local/tomcat

Dann dafür sorgen, dass sich der Tomcat automatisch mitstartet bei Server-Start, dazu wird die Datei /etc/init.d/tomcat editiert, hier kommen folgenden Zeilen rein:

# Tomcat auto-start
#
# description: Auto-starts tomcat
# processname: tomcat
# pidfile: /var/run/tomcat.pid

export JAVA_HOME=/usr/lib/jvm/java-6-sun

case $1 in
start)
sh /usr/local/tomcat/bin/startup.sh
;;
stop)
sh /usr/local/tomcat/bin/shutdown.sh
;;
restart)
sh /usr/local/tomcat/bin/shutdown.sh
sh /usr/local/tomcat/bin/startup.sh
;;
esac
exit 0

Das Script muss ausführbar sein und beim Serverstart ausgeführt werden. Deswegen noch diese Anpassungen:

chmod 755 /etc/init.d/tomcat
vi /etc/init.d/tomcat
ln -s /etc/init.d/tomcat /etc/rc1.d/K99tomcat
ln -s /etc/init.d/tomcat /etc/rc2.d/S99tomcat

Gut, soweit fertig, der Tomcat sollte nun laufen. Gestoppt/Gestartet wird mit

/etc/init.d/tomcat start

Nun das Railo holen, entpacken und ins lib-Verzeichnis vom Tomcat legen:

wget http://www.getrailo.org/down.cfm?item=/railo/remote/download/
3.1.2.001/custom/all/railo-3.1.2.001-jars.tar.gz

tar zxvf railo-3.1.2.001-jars.tar.gz
mv railo-3.0.1.000-jars/ /usr/local/tomcat/lib

Nun muss die Konfigurationsdatei /usr/local/tomcat/conf/web.xml bearbeitet werden, da muss noch zusätzlich rein:

<servlet>
<servlet-name>CFMLServlet</servlet-name>
<servlet-class>railo.loader.servlet.CFMLServlet</servlet-class>
   <init-param>
      <param-name>configuration</param-name>

      <param-value>{web-root-directory}/WEB-INF/railo/</param-value>
      <description>Configuraton directory</description>
   </init-param>
   <load-on-startup>1</load-on-startup>

</servlet>
<servlet-mapping>
   <servlet-name>CFMLServlet</servlet-name>
   <url-pattern>*.cfm</url-pattern>
</servlet-mapping>
<servlet-mapping>

   <servlet-name>CFMLServlet</servlet-name>
   <url-pattern>*.cfml</url-pattern>
</servlet-mapping>
<servlet-mapping>
   <servlet-name>CFMLServlet</servlet-name>

   <url-pattern>*.cfc</url-pattern>
</servlet-mapping>

Im Element <welcome-file-list> muss noch folgende Ergänzung gemacht werden:

<welcome-file>index.cfm</welcome-file>
<welcome-file>index.cfml</welcome-file>

Unter Port 8080 sollte nun bereits das Railo mit dem Tomcat zusammenarbeiten, wir können cfml ausliefern.

Wie cfml auch über Port 80 mittels mod_proxy und mod_ajp ausgeliefert werden kann, werde ich einem seperaten Teil beschrieben