Liebes Forum,
da die indexed search bei mir mit der Zeit deutlich zu langsam geworden ist habe ich mich nach einer Alternative umgeschaut und mnoGoSearch entdeckt. Die Installation ist gar nicht so kompliziert wie es sich anhört, bei mir hat es insgesamt recht schnell geklappt, auch das indexieren von PDFs und das Vorschlagen von alternativen Suchwörten klappt. Und vorallem sehr schnell 🙂
Um mnoGoSearch zu installieren braucht man einen root-Zugriff auf den Server und natürlich die dazugehörigen Rechte Software zu isntallieren.
Ich habe mnoGoSearch auf einem Debian Lenny mit PHP5, MySQL5 und Apache2 mit mod-fcgid am laufen.
Benötigte Pakete installieren:
Zuerst brauchen wir die benötigten Pakete. Ich musste folgendes mit apt-get install nachisntallieren:
libmysqlclient15-dev
zlib1g-dev
php5-dev
xpdf-utils
ispell
ingerman od. iogerman (hier bin ich mir nicht mehr ganz sicher welches das richtige war. Diese Pakete bringen ispell die deutsche Sprache bei damit zb. bei ue auch nach ü gesucht wird)
Datenbank einrichten:
Danach habe ich eine neue Datenbank für mnogosearch eingerichtet (wie auch immer man das tun möchte...), da die Indexierten Daten nicht in der TYPO3 Datenbank gespeichert werden können. Das würde auch unübersichtlich werden, da ca. 240 Tabellen angelegt werden.
mnoGoSearch installieren:
Zuerst ins tmp-Verzeichnis wechseln und den Source-Code runterladen
cd /tmp
Downloaden:
wget http://www.mnogosearch.org/Download/mnogosearch-3.3.9.tar.gz
Entpacken:
tar xzf mnogosearch-3.3.6.tar.gz
Installation vorbereiten:
cd mnogosearch-3.3.9
nano configure.in
Zeile suchen (strg + w)
AC_DEFINE([HAVE_PGSQL], [1], [Define if you want to use PostgreSQL])
ändern in
AC_DEFINE([HAVE_PGSQL], [0], [Define if you want to use PostgreSQL])
Speichern und beenden (strg + o, strg + x)
Source-Code passend einstellen (eine Zeile!)
./configure --prefix=/opt/mnogosearch --disable-mp3 --disable-news --without-debug --with-pgsql=no --with-freetds=no --with-oracle8=no --with-oracle8i=no --with-iodbc=no --with-unixODBC=no --with-db2=no --with-solid=no --with-openlink=no --with-easysoft=no --with-sapdb=no --with-ibase=no --with-ctlib=no --with-zlib --with-mysql --disable-syslog
Installieren:
make
make install
Der folgende Ordner sollte nun exestieren und ein paar Dateien und Ordner beinhalten:
/opt/mnogosearch
PHP-Modul vorbereiten:
cd /tmp/mnogosearch-3.3.9/php
phpize
./configure --with-mnogosearch=/opt/mnogosearch
Installieren:
make
make install
PHP-Modul einbinden:
in die php.ini folgendes einfügen:
extension=mnogosearch.so
Den Apache neustarten:
/etc/init.d/apache2 restart
und z.b. mit einer PHP-Datei die den Ihhalt
<?php
phpinfo();
?>
hat prüfen ob's geklappt hat.
Suche in Typo3 einbinden:
über den Extension-Manager die Extension mnogosearch mit allen Abhängigkeiten istallieren und die statischen Templates einbinden (das Pagebrowse-Template vor das mnogosearch, sonst meckert er)
Nun am besten auf der Root-Seite ein ihnaltselement mnoGoSearch-Indexierungskonfiguration anlegen, ich habe folgendes eingetragen:
Konfigurationstyp: Server
Indexierungspfad: http://www.domain.de/ (der / am Ende ist sehr wichtig!)
Zusätzliche Indexierungskonfiguration: Affix de iso-8859-1 /usr/lib/ispell/ndeutsch.aff (das ist das deutsche Wörterbuch)
Jetzt auf irgend einer Seite das mnogosearch-Plugin einfügen, unter Suche beschränken auf: wählen wir den eben angelegten Datensatz aus.
Die Suche sollte noch auf den Inhaltsbereich eingegrenzt werden. Das geschieht durch die Marker im Template:
<!--TYPO3SEARCH_begin-->
INHALT
<!--TYPO3SEARCH_end-->
Jetzt zuerst das Script aus der Shell mit der Option zum neu anlegen der SQL Tabellen starten:
/usr/bin/php -q /var/www/virtual/*PFAD*/typo3/cli_dispatch.phpsh mnogosearch -c
Zu guter Letzt das Indexierungsscript starten, dafür sollte man dann nach dem Testen auch einen Cron-Job anlegen:
/usr/bin/php -q /var/www/virtual/*PFAD*/typo3/cli_dispatch.phpsh mnogosearch -w -n
Das dauert jetzt etwas, erste Suchergebnisse sollten aber nach ein paar Minuten auffindbar sein.
Ich hoffe das ist verständlich klappt so!