3 httpd.conf httpd.mtype \- configuration files for the Minix httpd web server
9 is the configuration file for the Minix httpd web server written by
10 Michael Temari. A sample version is included with the distribution
11 archive and is unpacked in the source directory (normally
12 .BI /usr/local/src/httpdxxx).
13 Also provided is an example
15 file. This is an extension of the main configuration file which is normally
16 included when the main file is read.
18 The makefile does not install
22 automatically. The sample files included in the distribution are only
23 examples, you must copy and edit them for the needs of your own
25 .SH CONFIGURATION FILE FORMAT
27 is an ascii file which consists of lines of the following form:
29 .B directive LWS [parameters separated by LWS]
31 NOTE: LWS denotes Linear White Space which is spaces and/or tabs
32 .SH CONFIGURATION FILE DIRECTIVES
33 The following are valid configuration file directives (listed in the order
34 they appear in the sample
36 file provided in the distribution):
38 .B serverroot redirect user chroot logfile dbgfile dirsend direxec
39 .B vhost auth proxyauth vpath include mtype
41 To make the file more readable, for directives which occupy multiple
42 lines you may eliminate the directive on lines after the first and begin
45 .SH DESCRIPTIONS OF DIRECTIVES
51 directive sets the translation for
60 directive will redirect the entire website via error code
61 "301 MOVED PERM" to specified url and original path of request.
67 directive causes the server to run as the given
69 otherwise the server will run as whoever started it (normally root).
75 directive causes the server to chroot to the given directory after
76 the configuration and log files have been opened. Normally this will be the
77 home directory of the given username in the user directive.
81 will be translated to the home directory of
86 will be translated to the serverroot directory.
88 NOTE: if this directive is used then beware of the consequences.
94 directive tells the server where to log http transactions.
96 NOTE: the log file must exist to enable logging.
102 directive tells the server where to log debugging of http transactions.
104 NOTE: the debug log file must exist to enable debug logging.
110 directive tells the server that when a directory is requested
111 that it should send the first file that it finds in the directory from the
119 directive tells the server that when a directory is requested
120 and no file is found from the
122 directive that it should run the given
125 NOTE: the program normally generates a directory listing on the fly using
130 NOTE: the program access is considered
132 with no access restrictions.
134 .B vhost hostname vhostroot
138 directive is for defining access for virtual hosts. If none are configured
139 then any host is accepted. If specified then access is only granted for
140 requests for hosts which are configured here. In the
144 gets translated to the corresponding
148 .B auth authname authdescription access [passwdfile [users]]
152 directive sets up different authorizations with the server. The
154 is the name given to the authorization and is case insensitive.
157 is the description of the authorization and is what
158 the user will see when asked to enter a username and password. The
159 access is one or more of
162 tells the server the URL can be read.
164 tells the server the URL can be overwritten.
167 that the URL can and should be executed. Access is in addition to normal
168 Unix security considerations. For instance a file that can be written to
169 that does not have the
171 access will have an error returned. The
173 is the name of the password file to validate users against. If
177 then the system password file
181 is given then no authorization is allowed for anyone. If no
183 are given then any validated user is authorized, otherwise only the given
187 .B proxyauth authname authdescription access [passwdfile [users]]
191 directive defines access authorization to be used for Proxy access.
200 = Must be R to allow proxy
208 .B vpath from to [auth [access]]
212 directive sets up URL path translations and authorizations. A
213 requested URL that matches
215 will be translated to
223 does not exist then the URL will have no
227 is not given then the access is taken from the
229 record (see above). A
233 means that the server should use a translation from another
235 record, but associate the given
237 and access with the requested URL. A
239 may be at the end only of the
241 to provide a wildcard match. For example if the
254 will not. The requested URL is first checked against each
256 record until an exact match (meaning URL match
262 is found or the end of the list. Therefore a wildcard match will match
264 .B from in the list in which it matched.
266 NOTE: if at the beginning of the to field
268 /~user will get translated to the home directory of the given user
270 // will get translated to the serverroot directory
276 directive tells the server to read configuration information
277 from the given filename.
279 NOTE: normally you get
281 directives in an included file.
283 .B mtype mimetype extensions
287 directive tells the server what
289 to associate with files which have any of the given
291 If no match is found then the file will be treated as
292 .B application/octet-stream.
303 The source directory contains a commented sample
309 You can run the server as
310 .B httpd -t /etc/httpd.conf
311 to see whether the configuration file is being parsed correctly.
313 Although standard Minix does not have a graphical interface to support
314 browsers such as Netscape and Microsoft Internet Explorer, the
316 browser can be used on 32-bit Minix systems with enough memory. You can point
317 lynx to your own site to browse your own pages.
318 When debugging a web server there is nothing quite like browsing your own
319 pages to see whether things are working right. That said, be aware that
320 different web browsers may vary in how they interpet standard web page
321 features, and will certainly vary in how they interpret "extensions" to
322 the HTML standards. So checking a page with several browsers on several
323 platforms is always a good idea.
325 Not really a bug, but you can get in trouble if a real directory you want
326 to access shares the first part of its name with a
328 definition. You just have to pay attention to the directory names you use.
330 The Minix httpd server was created by and is maintained by Michael Temari
331 <Michael@TemWare.Com>
333 Man page was compiled by Al Woodhull <asw@woodhull.com>
334 .\" updated 2006-06-01