# HG changeset patch # User Ben Schmidt # Date 1285549175 -36000 # Node ID fd77dd58bde1bfeeb3b3b6e526a4a9067bdcd124 # Parent 32d3f7e3b523f421f41c4b5ef83afe2788217dab Added info on a hierarchical multi-domain option to README.postfix diff -r 32d3f7e3b523 -r fd77dd58bde1 README.postfix --- a/README.postfix Mon Sep 20 02:52:22 2010 +1000 +++ b/README.postfix Mon Sep 27 10:59:35 2010 +1000 @@ -62,12 +62,15 @@ /^(mlmmj-test.*)@example\.com$/ ${1} /^(another-list.*)@sample\.com$/ ${1} - One line needs to be in the virtual map for each list the 'mlmmj' id is to handle. The regex formula is: /^(list-name.*)@(domain\.com)$/ ${1} + If you want to host multiple domains in a hierarchical structure, + you can alternatively use: + + /^(list-name.*)@(domain\.com)$/ domain--${1} Next we make sure that postfix can invoke the mlmmj executables as the 'mlmmj' user. This is where the transport map comes in. So we @@ -89,6 +92,10 @@ Which in this case is the mailing list name. 'nexthop' is special variable for transports. + For the hierarchical multi-domain solution, use this variant: + + /^(domain--list-name).*$/ mlmmj:domain/list-name + Now we setup the 'mlmmj' transport. The 'mlmmj' in mlmmj:$1 above indicates a transport listed in the postfix master.cf file. We are just going to create a transport called 'mlmmj' but it is nothing @@ -117,7 +124,10 @@ $nexthop gets set to what was on the right had side of the ':' in the transport file. The way we have that configured is that - $nexthop will get set to the name of the mailing list. + $nexthop will get set to the name of the mailing list (or domain + and name). Your list directories, then, should be at + /var/spool/mlmmj/list-name as usual, or for the hierarchical + multi-domain version, in /var/spool/mlmmj/domain/list-name. Restart postfix and enjoy your new lists.