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