Moin!
jetz hab ich nen spider fertiggestellt, welcher allerdings "NUR" 311 dateien in 30 sec durcharbeiten kann :-(
was vermutlich der grund für ein solches ergebnis ist:
http://www.cashers.de/3gnet/search.php?query=testder spider öffnet jede datei, prüft sie nach nem bestimmten algorithmus, ob sie den suchstring enthält und liefert das ergebnis dann zurück...
Du kannst zwei Ansätze verfolgen:
1. Du erhöhst, sofern du die Rechte dazu hast, die erlaubte Ausführungszeit von PHP-Skripten.
2. Du programmierst einen effizienteren Suchalgorithmus.
Ich würde zu Methode 2 raten. Das, was bei dir wahnsinnig viel Zeit frißt, ist das Öffnen und Durchsuchen von Verzeichnissen und Dateien. Das kannst du _wesentlich_ einfacher und schneller haben, wenn du diese ganze Arbeit nur _einmal_ machst und dabei die Dateien in Worte zerlegst und die Worte zusammen mit ihrer Fundstelle abspeicherst. Wenn dann ein Wort gesucht wird, liest du nur noch die Liste der Fundstellen aus und hast mehr oder weniger sofort die Ergebnisliste.
Hierbei kann dir beispielsweise auch eine Datenbank helfen. Außerdem ist es ratsam, eine Stoppwort-Liste einzuführen, die alle häufigen Wörter aus den Ergebnislisten fernhält. Wenn ein Wort auf allen Seiten vorkommt, ist diese Information nämlich nicht sehr wertvoll.
Ach ja, eine dritte Methode funktioniert natürlich auch noch: Setze eine existierende Suchmaschine ein. Es gibt beispielsweise htdig, die die Aufgabe einer Site-Suche ganz gut bewältigt. Allerdings brauchst du dazu mit Sicherheit auch wieder etwas mehr Rechte als nur einen FTP-Zugang zum Server, um sie zu installieren.
- Sven Rautenberg
SELFTREFFEN 2003 - http://selftreffen.kuemmi.ch/
ss:) zu:) ls:[ fo:} de:] va:) ch:] sh:) n4:# rl:| br:< js:| ie:( fl:( mo:|