
Peter wrote:
Le Samedi 3 Février 2007 15:37, Patrick Bogen a écrit :
On 1/31/07, Peter Matulis <pmatulis@sympatico.ca> wrote:
Can someone explain to me how mailman and the web server can exist on separate machines? I am new to mailman and I'm having a hard time understanding how mailman communicates with its web server. I have a new client that connects to an external web server to add list members but mailman (and postfix) runs on a local system. I believe this would have to work with Mailman acting upon and reading from files that are stored in such a way that the external web server can access them. This means:
(a) The files are stored on the Mailman server, and the web server accesses them through something like NFS. (b) The files are stored on the web server, and the mailman server accesses them through something like NFS. (c) The files are stored in a third server, and both the web server and the mailman server access them through something like NFS.
No, the web server is on the internet and the mailman server is on the lan.
I'm not sure how the fact that one machine is 'on the internet' and the other is 'on the lan' relates to Patrick's answer, so let's go back to your original question.
Mailman's web pages are built by CGIs which access basic Mailman classes, methods and functions defined in a set of Mailman modules. These classes, methods and functions access various Mailman data. Most of this is the list's configuration and membership which is normally a Mailman list object saved as a Python pickle in /some/path/to/lists/<listname>/config.pck.
Mailman's email processing is done by a set of qrunner processes accessing the same Modules and data as above. There is one (or possibly more) qrunner process for each queue - in, out, archive, commands, bounces, news, retry and virgin.
Incoming mail is normally piped by the incoming MTA to a wrapper which invokes a script to store the message in a queue to be processed by one of the qrunners.
If both the web pages and the lists are accessing and updating 'live' data, and the web server and the qrunners are not on the same machine, they must be accessing the same list data via some file sharing scheme. Normally, they would also access the same Mailman modules, but this isn't necessary.
If the web is used only for inquiry and not update, it could be operating on copies which are updated periodically, but if the web interface is used to make any changes, both it and the qrunners must access the same data and queues.
-- Mark Sapiro <msapiro@value.net> The highway is for gamblers, San Francisco Bay Area, California better use your sense - B. Dylan