Prolog:
Da ich meinen eigenen Mailserver mit Courier-Imap betreibe, habe ich mir schon seit Jahren zur Angewohnheit gemacht, meine Mails nicht mehr zu löschen. Bestimmte Status Mails des Servers sind natürlich davon ausgenommen, die halte ich nicht ungegrenzt vor.
Der Nachteil dieser Sache ist allerdings, dass das Suchen in diesen mehr als 10000 Mails schon mal etwas dauern kann.
Als Mail Interface verwende ich normalerweise Thunderbird, bzw. Icedove.
Da geht das suchen eigentlich noch gerade so.
Besonders nervig ist das Suchen über das Squirrelmail Webinterface. Blöderweise scheint squirrel auch immer von "hinten" anzufangen, durchsucht alos von den ältesten Mails zu den neuen hin. Das kann sich schonmal ein paar Minuten hinziehen.
Heute habe ich die $Suchmaschine angeworfen und bin auf eine Einstellungsoption für Squirrelmail gestossen, womit ich diese Suchen erheblich beschleunigen konnte.
Lösung:
Squirrelmail verwendet normalerweise seinen eigenen in php geschriebenen Suchalgorithmus. Man kann aber auch den Server selber suchen lassen, was natürlich entsprechend flotter ist!
Zuerst überprüft man, ob sein Imap Server das serverseitige sortieren auch unterstützt und kann gleich auch gucken, ob auch Mail als Thread darstellbar ist.
Mit telnet kann das ganz leicht festgestellt werden:
# telnet localhost imap Trying 127.0.0.1... Connected to localhost. Escape character is '^]'. * OK [CAPABILITY IMAP4rev1 UIDPLUS CHILDREN NAMESPACE THREAD=ORDEREDSUBJECT THREAD=REFERENCES SORT QUOTA IDLE ACL ACL2=UNION STARTTLS] Courier-IMAP ready. Copyright 1998-2010 Double Precision, Inc. See COPYING for distribution information. CAPABILITY * CAPABILITY IMAP4rev1 UIDPLUS CHILDREN NAMESPACE THREAD=ORDEREDSUBJECT THREAD=REFERENCES SORT QUOTA IDLE ACL ACL2=UNION STARTTLS CAPABILITY OK CAPABILITY completed
Per default stehen die beiden Einstellung bis squirrelmail Version 1.5 auf false
#/etc/squirrelmail/config.php $allow_thread_sort = true; $allow_server_sort = true;Ich habe die Einstellungen auf true geändert. Die neuen Einstellungen werden sofort wirksam
Wer eine Squirrelmail Version >=1.51 hat, findet die Einträge
$disable_thread_sort = false; $disable_server_sort = false;
Hier ist also als default das serverseitige suchen eingeschaltet.
Ich bin jedenfalls begeistert über die nun sehr schnelle suche im Betreff und im Absender!
Die Suche im Nachrichtentext ist gefühlt nicht viel schneller geworden, allerdings ist die Suche von den neuesten Mails bis zu den ältesten, sehr sinnvoll!