|
|
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
<link rel="STYLESHEET" href="mailman-install.css" type='text/css' />
<link rel="first" href="mailman-install.html" title='GNU mailman - installation Manual' />
<link rel='last' href='about.html' title='About this document...' />
<link rel='help' href='about.html' title='About this document...' />
<link rel="next" href="mail-server.html" />
<link rel="prev" href="node9.html" />
<link rel="parent" href="front.html" />
<link rel="next" href="mail-server.html" />
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta name='aesop' content='information' />
<title>5 Set up your web server</title>
</head>
<body>
<div class="navigation">
<div id='top-navigation-panel' xml:id='top-navigation-panel'>
<table align="center" width="100%" cellpadding="0" cellspacing="2">
<tr>
<td class='online-navigation'><a rel="prev" title="4 check your installation"
href="node9.html"><img src='previous.png'
border='0' height='32' alt='Previous Page' width='32' /></a></td>
<td class='online-navigation'><a rel="parent" title="Front Matter"
href="front.html"><img src='up.png'
border='0' height='32' alt='Up one Level' width='32' /></a></td>
<td class='online-navigation'><a rel="next" title="6 set up your"
href="mail-server.html"><img src='next.png'
border='0' height='32' alt='Next Page' width='32' /></a></td>
<td align="center" width="100%">GNU Mailman - Installation Manual</td>
<td class='online-navigation'><img src='blank.png'
border='0' height='32' alt='' width='32' /></td>
<td class='online-navigation'><img src='blank.png'
border='0' height='32' alt='' width='32' /></td>
<td class='online-navigation'><img src='blank.png'
border='0' height='32' alt='' width='32' /></td>
</tr></table>
<div class='online-navigation'>
<b class="navlabel">Previous:</b>
<a class="sectref" rel="prev" href="node9.html">4 Check your installation</a>
<b class="navlabel">Up:</b>
<a class="sectref" rel="parent" href="front.html">Front Matter</a>
<b class="navlabel">Next:</b>
<a class="sectref" rel="next" href="mail-server.html">6 Set up your</a>
</div>
<hr /></div>
</div>
<!--End of Navigation Panel-->
<h1><a name="SECTION001500000000000000000">
5 Set up your web server</a>
</h1>
<p>
Congratulations! You've installed the Mailman software. To get everything
running you need to hook Mailman up to both your web server and your mail
system.
<p>
If you plan on running your mail and web servers on different machines,
sharing Mailman installations via NFS, be sure that the clocks on those two
machines are synchronized closely. You might take a look at the file
<span class="file">Mailman/LockFile.py</span>; the constant <var>CLOCK_SLOP</var> helps the locking
mechanism compensate for clock skew in this type of environment.
<p>
This section describes some of the things you need to do to connect Mailman's
web interface to your web server. The instructions here are somewhat geared
toward the Apache web server, so you should consult your web server
documentation for details.
<p>
You must configure your web server to enable CGI script permission in the
<span class="file"><var>$prefix</var>/cgi-bin</span> to run CGI scripts. The line you should add
might look something like the following, with the real absolute directory
substituted for <var>$prefix</var>, of course:
<p>
<div class="verbatim"><pre>
Exec /mailman/* $prefix/cgi-bin/*
</pre></div>
<p>
or:
<p>
<div class="verbatim"><pre>
ScriptAlias /mailman/ $prefix/cgi-bin/
</pre></div>
<p>
<div class="warning"><b class="label">Warning:</b>
You want to be very sure that the user id under which your CGI scripts run is
<strong>not</strong> in the <code>mailman</code> group you created above, otherwise private
archives will be accessible to anyone.
</div>
<p>
Copy the Mailman, Python, and GNU logos to a location accessible to your web
server. E.g. with Apache, you've usually got an <span class="file">icons</span> directory that
you can drop the images into. For example:
<p>
<div class="verbatim"><pre>
% cp $prefix/icons/*.{jpg,png} /path/to/apache/icons
</pre></div>
<p>
You then want to add a line to your <span class="file"><var>$prefix</var>/Mailman/mm_cfg.py</span>
file which sets the base URL for the logos. For example:
<p>
<div class="verbatim"><pre>
IMAGE_LOGOS = '/images/'
</pre></div>
<p>
The default value for <var>IMAGE_LOGOS</var> is <span class="file">/icons/</span>. Read the comment
in <span class="file">Defaults.py.in</span> for details.
<p>
Configure your web server to point to the Pipermail public mailing list
archives. For example, in Apache:
<p>
<div class="verbatim"><pre>
Alias /pipermail/ $varprefix/archives/public/
</pre></div>
<p>
where <var>$varprefix</var> is usually <var>$prefix</var> unless you've used the
<b class="programopt">--with-var-prefix</b> option to <b class="program">configure</b>. Also be
sure to configure your web server to follow symbolic links in this directory,
otherwise public Pipermail archives won't be accessible. For Apache users,
consult the <var>FollowSymLinks</var> option.
<p>
If you're going to be supporting internationalized public archives, you will
probably want to turn off any default charset directive for the Pipermail
directory, otherwise your multilingual archive pages won't show up correctly.
Here's an example for Apache, based on the standard installation directories:
<p>
<div class="verbatim"><pre>
<Directory "/usr/local/mailman/archives/public/">
AddDefaultCharset Off
</Directory>
</pre></div>
<p>
Also, you may need to specifically allow access to Mailman's directories.
For example, in Apache, the above Directory block may need something like
<p>
<div class="verbatim"><pre>
Require all granted
</pre></div>
<p>
or
<p>
<div class="verbatim"><pre>
Order allow,deny
Allow from all
</pre></div>
<p>
depending on the Apache version and similarly for the <var>$prefix</var>/cgi-bin/
directory.
<p>
Now restart your web server.
<p>
<div class="navigation">
<div class='online-navigation'>
<p></p><hr />
<table align="center" width="100%" cellpadding="0" cellspacing="2">
<tr>
<td class='online-navigation'><a rel="prev" title="4 check your installation"
href="node9.html"><img src='previous.png'
border='0' height='32' alt='Previous Page' width='32' /></a></td>
<td class='online-navigation'><a rel="parent" title="Front Matter"
href="front.html"><img src='up.png'
border='0' height='32' alt='Up one Level' width='32' /></a></td>
<td class='online-navigation'><a rel="next" title="6 set up your"
href="mail-server.html"><img src='next.png'
border='0' height='32' alt='Next Page' width='32' /></a></td>
<td align="center" width="100%">GNU Mailman - Installation Manual</td>
<td class='online-navigation'><img src='blank.png'
border='0' height='32' alt='' width='32' /></td>
<td class='online-navigation'><img src='blank.png'
border='0' height='32' alt='' width='32' /></td>
<td class='online-navigation'><img src='blank.png'
border='0' height='32' alt='' width='32' /></td>
</tr></table>
<div class='online-navigation'>
<b class="navlabel">Previous:</b>
<a class="sectref" rel="prev" href="node9.html">4 Check your installation</a>
<b class="navlabel">Up:</b>
<a class="sectref" rel="parent" href="front.html">Front Matter</a>
<b class="navlabel">Next:</b>
<a class="sectref" rel="next" href="mail-server.html">6 Set up your</a>
</div>
</div>
<hr />
<span class="release-info">Release 2.1, documentation updated on July 7, 2016.</span>
</div>
<!--End of Navigation Panel-->
</body>
</html>
|