Mit Apache Solr können Sie eine intelligente Suchmaschine in Drupal integrieren. Apache Solr läuft mit einem Java Servlet Container. Wir verwenden hierzu Tomcat6.
Die Funktionen im Überblick:
- Volltextsuche
- Faceted Search
- Filterung
- Ähnliche Treffer
- Relevanz
- PDF, DOC, XLS,… Suche (Dokumentensuche mit Tika)
- Indizierung
- uvm.
Voraussetzungen:
Ubuntu 8.04 mit PHP5, Apache2, MySQL und installiertem Drupal 6.
Man kann den Solr Server auf dem Webserver betreiben, oder einen eigenständigen Server verwenden. Hier im Beispiel wird desselbe Server verwendet.
Schritt 1: Root Login
Alle Befehle müssen als Root ausgeführt werden. Loggen Sie sich bitte als Root User ein mit:
Schritt 2: Quellen Update
Die Quellen müssen geupdatet werden mit:
Schritt 3: Download von Apache Solr und Tomcat 6
Laden Sie folgende Dateien herunter:
Apache Solr (http://www.apache.org/dyn/closer.cgi/lucene/solr/)
Tomcat 6 – Core Datei (http://tomcat.apache.org/download-60.cgi)
Schritt 4: Installation vom Java SDK
Hier müssen die Lizenzen angenommen werden.
Schritt 5: Entpacken der Dateien
und
Schritt 6: Kopieren und verschieben der Dateien
Tomcat6
Apache Solr
Anlegen der solr.xml Datei
Fügen Sie in diese Datei folgenden Code ein und speichern Sie diese.
<Environment name=”solr/home” type=”java.lang.String” value=”/usr/local/tomcat6/solr” override=”true” />
</Context>
Schritt 7: Catalina und Java Konfiguration
Führen Sie folgende Befehle nacheinander aus:
Es kann vorkommen, dass beim kopieren die Ausrufzeichen nicht mit kopiert werden. Bitte achten Sie darauf!
Test der Einstellung:
Folgendes sollte nun zu sehen sein:
Schritt 8: Solr Administration Test
Öffnen Sie in einem Webbrowser folgende Adresse:
Nun sollten Sie folgendes angezeigt bekommen:
Schritt 9: Startup Skript erstellen
Um Tomcat6 starten, stoppen oder neustarten zu können, müssen wir ein Skript anlegen:
Fügen Sie folgenden Code in die Datei, passen Sie ggf. den Java Pfad (Zeile 3) an und speichern Sie das ganze.
export JAVA_HOME=/usr/lib/jvm/java-6-sun-1.6.0.24
export JAVA_OPTS=”$JAVA_OPTS -Dsolr.solr.home=/usr/local/tomcat6/solr”
case $1 in
start)
sh /usr/local/tomcat6/bin/startup.sh
;;
stop)
sh /usr/local/tomcat6/bin/shutdown.sh
;;
restart)
sh /usr/local/tomcat6/bin/shutdown.sh
sh /usr/local/tomcat6/bin/startup.sh
;;
esac
exit 0
Rechte setzen:
Update:
Test:
Folgendes sollte nun angezeigt werden:
Schritt 10: Installation des Apache Solr Moduls in Drupal
Laden Sie hierzu das Modul herunter:
http://drupal.org/project/apachesolr
Kopieren Sie es per FTP auf Ihren Webserver unter /modules/
Schritt 11: Kopieren notwendiger Solr Dateien
Tomcat neustarten:
Schritt 12: SolrPhpClient installieren
Download: http://solr-php-client.googlecode.com/files/SolrPhpClient.r22.2009-11-09.tgz
Es muss die Revision R22 sein.
Kopieren Sie den Inhalt unter /modules/apachesolr/SolrPhpClient
Schritt 13: Konfiguration in Drupal 6
Öffnen Sie Ihre Drupal Seite und gehen Sie unter Verwalten –> Strukturierung –> Module.
Aktivieren Sie folgende Module:
- Apache Solr search
- Apache Solr node access
Gehen Sie nun unter Verwalten –> Website-Einstellungen –> Apache Solr
Geben Sie hier nun den Hostname, Port und das Verzeichnis an:
Bei mir:
Hostname: localhost
Port: 8080
Verzeichnis: /solr
Wenn oben in grün angezeigt wird: Apache Solr: Your site has contacted the Apache Solr server. ist alles in Ordnung.
Schritt 14: Indizierung starten
Die Inhalte müssen jetzt noch indiziert werden. Gehen Sie hierzu unter Search Index und klicken Sie auf running cron. Die Indizierung dauert ein paar Minuten.
Hierzu sollte eine Cronjob eingerichtet werden.
Wenn die Dokumente indiziert wurden kann das ganze mal getestet werden.
Und siehe da: Es funktioniert.
Viel Spass damit!





