Die Installation von Solr
Mit der Verwendung von mksearch steht man zunächst vor der Frage, welche Suchmaschine man einsetzen möchte. Für einfache Hosting-Pakete kann man auf Zend-Lucene zurückgreifen. Es handelt sich um einen PHP Port von Apache Lucene. Natürlich ist der Leistungsumfang nicht annähernd so groß, wie bei Solr. Aber eine sinnvolle Alternative zu Indexed Search ist es allemal!
Für den Chemnitzer FC werde ich aber auf Apache Solr setzen. Solr ist eine sogenannte Webapplikation gemäß dem JEE-Standard. Die Kommunikation läuft über http. Für Java-Webapplikationen benötigt man noch eine geeignete Laufzeitumgebung. Solr selbst wird mit Jetty ausgeliefert, aber auch Apache Tomcat ist eine sehr häufig genutzte Alternative. Die WAR-Datei, letztendlich die eigentliche Applikation, befindet sich im Verzeichnis /dist.
Da die Einzelheiten der Installation von Jetty und Tomcat auf den einzelnen Linux-Distributionen unterschiedlich sind, werde ich hier nicht darauf eingehen. Im Solr-Wiki finden sich recht ausführliche Anleitungen sowohl für die Installation auf Basis von Jetty als auch für Tomcat. Ich möchte aber noch ein paar grundsätzliche Hinweise geben.
Zunächst habe ich also Jetty installiert. Den Port habe ich auf 8080 eingestellt und dafür gesorgt, daß Jetty nur auf lokale Requests lauscht. Anfragen aus dem Internet werden somit ignoriert und sind auch nicht notwendig. Jetty sollte auch auf keinen Fall als root ausgeführt werden. Wichtig für die korrekte Ausführung von Solr ist die Konfiguration der Variablen [solr.home]. Sie gibt das Arbeitsverzeichnis für Solr an. Dieses sollte unbedingt außerhalb des Webroots liegen. Der User unter dem Jetty/Tomcat ausgeführt wird, muss Schreibrechte auf dieses Verzeichnis haben.
Nun kann man Solr in der Laufzeitumgebung installieren. Dafür habe ich die Datei apache-solr-4.0.0.war in solr.war umbenannt und sie ins Verzeichnis JETTY_HOME/webapps/ kopiert. Damit wird Solr unter der URL localhost:8080/solr/ erreichbar sein. Das Verzeichnis [solr.home] habe ich mit dem Inhalt aus solr/example/multicore/ gefüllt. Dies sorgt dafür, daß Solr im Multi-Core Modus starten wird. Dies ist grundsätzlich ganz empfehlenswert.
Wenn man alles richtig gemacht hat, sollte sich der Solr Administrator nach dem Start von Jetty/Tomcat nun über den Browser aufrufen lassen. Da der Port von außen nicht erreichbar ist, muss man natürlich vorher noch einen ssh-Tunnel einrichten. Unter Linux geht dies ganz einfach über die Kommandozeile, unter Windows kann man Putty verwenden.
Im nächsten Schritt werden wir dann mksearch installieren und mit Solr verbinden.