aboutsummaryrefslogtreecommitdiffstats
path: root/doc/mailman-install/node10.html
blob: 2dc8cf03d8823b1bff046a40af9273be052990cb (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
<!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>
    &lt;Directory "/usr/local/mailman/archives/public/"&gt;
        AddDefaultCharset Off
    &lt;/Directory&gt;
</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 January 29, 2015.</span>
</div>
<!--End of Navigation Panel-->

</body>
</html>