[Postfixbuch-users] Domain Alias

Christian Boltz postfixbuch at cboltz.de
Fr Nov 16 22:42:54 CET 2007


Hallo Christian, hallo Sandy, hallo Leute,

eine Möglichkeit gibt es - lass den Domain-Alias auf Datenbankebene 
erstellen ;-)

Statt
    query = SELECT goto FROM alias WHERE address='%s' AND active = '1'

müsste folgendes funktionieren:
    query = SELECT goto FROM alias WHERE
        address=replace('%s', 'aliasdomain.de', 'domain.de')
    AND active = '1'

"Müsste", weil das ganze nur eine Idee und ungetestet ist.

Ich muss wohl nicht extra erwähnen, dass das Ganze nur bei wenigen 
Domain-Aliasen praktikabel ist - je nach Schmerzgrenze wird es ab 10 
oder 20 verschachtelten replace() unübersichtlich.


Wenn die Schmerzgrenze überschritten wird, erstellt man eine stored 
function [1], die die Ersetzung direkt in der Datenbank macht. 
Innerhalb dieser Funktion kann man dann einen SELECT auf eine 
Ersetzungstabelle machen.

Damit hat man das Problem der Unübersichtlichkeit gelöst. Außerdem wird 
das Ganze auch bei vielen Alias-Domains nicht langsamer.

Falls jemand die Variante mit der stored function angeht: Bitte die 
Funktion hier posten - dürfte noch mehr Leute interessieren!


Gruß

Christian Boltz

[1] http://dev.mysql.com/doc/refman/5.1/en/stored-procedures.html

-- 
Ich selbst benutze kweather nicht (ich guck einfach aus dem Fenster).
[Hartmut Meyer in suse-linux]



Mehr Informationen über die Mailingliste Postfixbuch-users