Configure your web server to run MailMan as a CGI script


If MailMan still isn't working at this point, then it may be because your web server doesn't understand how to handle the file, or because it knows but it is configured to not allow you to run a CGI script. If your server simply sends the MailMan script file to you as if it were a text document, then that's probably the problem.

This is the part where you mess with your web server configuration to tell it to run MailMan as a CGI script. You need to have the authority to mess with the configuration of your web server to follow these instructions, so if you do not then you are in the wrong place. If you are installing MailMan on a hosted server, then your hosting provider should have already configured the server with some policy of their preference for how CGI scripts work. You will need to contact the support department at your hosting provider to find out details on that if you didn't see MailMan just magically work when you tried it above. If you have any problems at all understanding what your hosting provider's support team is telling you, then just let us know what they said and we will be happy to try to help.

We provide instructions for Apache because the overwhelming majority of web servers out there are running Apache or Apache variants now. If you are using a different web server, then there is a pretty strong chance that it's based on Apache anyway, and so these instructions still might apply. Otherwise you might need to consult the documentation for your server. We're still happy to try to help if you're not using Apache, but we might not be the most appropriate authority on the subject. Contacting your web server's support team or doing a few Google searches might work better.

If you are using Apache, make sure that you have the "AddHandler" directive specified in your "httpd.conf" file to allow CGI scripts from locations other than "/cgi-bin". Most recent Apache version ship with a default "httpd.conf" file that includes a sample line "AddHandler cgi-script .cgi", but it's commented-out. Just un-comment the line. That line will tell your web server that any file that ends in ".cgi" is to be treated as a CGI script. Note that this is not the only way to run MailMan, but it is the most common. You also have the option of sticking the "mailman.cgi" file into a "cgi-bin" directory somewhere on your server, where it will be identified as a CGI script by its location instead of by its extension. Some people prefer to do that, and if you want to do that then you can, but you will have to store your template and image files in a different directory and explicitly configure MailMan so that it knows where they are.

You will also need to verify that the option "ExecCGI" is allowed on the directory that MailMan lives in. See section 8.1 for more information. The default configuration of Apache does not allow CGI scripts to be run from arbitrary locations. In order to allow CGI scripts from your directory, you need to add the option to a "Directory" directive in your "httpd.conf" file. The default "Directory" directive in most of the Apache distributions that we have seen has an "Option" statement that looks something like "Options FollowSymLinks" or "Options None". You will need to add the "ExecCGI" option to the directory that MailMan is installed in. You can do this either by adding "Options FollowSymLinks ExecCGI" to the default directory configuration (denoted in your file by the empty directive "") or by adding the "ExecCGI" option to the directory configuration for your "htdocs" directory, or perhaps even by explicitly specifying directory options for the directory that MailMan is installed in, with: "Options FollowSymLinks ExecCGI". Explicitly creating a new entry for your MailMan directory really is probably the best way to do it.

Once you have made changes to your "httpd.conf" file, restart your Apache process. Then try to access "mailman.cgi". If you still get an error then don't freak out yet, there are still some common problems that we can look for. Look at our troubleshooting page for more information.

Copyright © 1999 - 2002 Endymion Corporation
All rights reserved.
Carpe Noctem