firstname.lastname@example.org (Barry A. Warsaw) writes:
I've no direct experience with thttpd, but if it supports the "standard" CGI interface, it should be fine. If you do run into any gotchas (or even if it works fine), let us know and I'll add some text to the documentation.
So, it looks like there's more required than the standard CGI interface.
The Apache "ScriptAlias" directive and its relations, which Mailman seems to assume will be in operation, cause some other interesting behavior.
If you are using Apache and follow the INSTALL, you end up doing something like:
ScriptAlias /mailman/ /home/mailman/cgi-bin/
This has more of an effect than simply allowing CGI scripts to run from that directory. It also does some magic with the URLs that match that pattern. If one tries to GET, say, /mailman/listinfo/somelist, Apache does not try to run /home/mailman/cgi-bin/listinfo/somelist, but instead runs /home/mailman/cgi-bin/listinfo, and provides the rest of the URL ("somelist") to /home/mailman/cgi-bin/listinfo as an argument.
I don't believe that this is part of the CGI spec in any way.
The use of this behavior makes Mailman unable to work on a simple webserver that correctly implements CGI.
Based on a quick look at both pieces of software, I don't see a simple way to resolve this, which is really unfortunate.
Has anyone ever reported success running mailman on a webserver other than Apache (which had not simply copied Apache's ScriptAlias behavior)?
I'm going to do a bit more investigating before I give up, in any case.