1 |
# Boa v0.94 configuration file |
2 |
# File format has not changed from 0.93 |
3 |
# File format has changed little from 0.92 |
4 |
# version changes are noted in the comments |
5 |
# |
6 |
# The Boa configuration file is parsed with a lex/yacc or flex/bison |
7 |
# generated parser. If it reports an error, the line number will be |
8 |
# provided; it should be easy to spot. The syntax of each of these |
9 |
# rules is very simple, and they can occur in any order. Where possible |
10 |
# these directives mimic those of NCSA httpd 1.3; I saw no reason to |
11 |
# introduce gratuitous differences. |
12 |
|
13 |
# $Id: boa.conf,v 1.25 2002/03/22 04:33:09 jnelson Exp $ |
14 |
|
15 |
# The "ServerRoot" is not in this configuration file. It can be compiled |
16 |
# into the server (see defines.h) or specified on the command line with |
17 |
# the -c option, for example: |
18 |
# |
19 |
# boa -c /usr/local/boa |
20 |
|
21 |
# number of threads to spawn |
22 |
Threads 4 |
23 |
|
24 |
# maximum connections (per thread) |
25 |
#MaxConnections 0 |
26 |
|
27 |
# non zero enables SSL support |
28 |
# 1: only SSL support |
29 |
# 2: both SSL and non SSL ports |
30 |
SSL 2 |
31 |
|
32 |
# The port where the SSL server will listen on |
33 |
SSLPort 4443 |
34 |
|
35 |
# read the certificate from |
36 |
SSLCertificate cert.pem |
37 |
|
38 |
# read the private key from |
39 |
SSLKey key.pem |
40 |
|
41 |
# Number of sessions to cache. This is to support session resuming. |
42 |
# Set to 0 to disable. |
43 |
SSLSessionCache 40 |
44 |
|
45 |
# After this time (in seconds) has passed, the stored SSL sessions |
46 |
# will be expired, and will not be resumed. |
47 |
SSLSessionTimeout 3600 #one hour |
48 |
|
49 |
# Set the prime bits used in Diffie Hellman authentication. The parameters |
50 |
# are only generated if the DHE ciphersuites are enabled. |
51 |
# Value should be one of 768, 1024, 2048, 4096 |
52 |
SSLDHBits 768 |
53 |
|
54 |
# The period when the generated parameters are valid. After that period |
55 |
# boa will regenerate parameters. |
56 |
SSLParamsRefresh 172800 #two days |
57 |
|
58 |
# A comma separated list of the SSL ciphers. Valid selections are: |
59 |
# ARCFOUR-128, ARCFOUR-40, 3DES, AES |
60 |
# Note that ARCFOUR-40 is a weak algorithm. |
61 |
SSLCiphers "AES, 3DES, ARCFOUR-128, ARCFOUR-40" |
62 |
|
63 |
# A comma separated list of the SSL key exchange methods. Valid selections |
64 |
# are: RSA, DHE-RSA, DHE-DSS, RSA-EXPORT |
65 |
# Note that RSA-EXPORT is a weak algorithm. |
66 |
SSLKeyExchangeAlgorithms "RSA, RSA-EXPORT" |
67 |
|
68 |
# A comma separated list of the SSL MAC algorithms. Valid selections |
69 |
# are: MD5, SHA1 |
70 |
SSLMACAlgorithms "SHA1, MD5" |
71 |
|
72 |
# A comma separated list of the SSL compression methods. Valid selections |
73 |
# are: NULL |
74 |
SSLCompressionMethods "NULL" |
75 |
|
76 |
# A comma separated list of the SSL protocol versions. Valid selections |
77 |
# are: TLS1.0 and SSL3.0 |
78 |
SSLProtocols "TLS1.0, SSL3.0" |
79 |
|
80 |
# Port: The port Boa runs on. The default port for http servers is 80. |
81 |
# If it is less than 1024, the server must be started as root. |
82 |
|
83 |
Port 80 |
84 |
|
85 |
# Listen: the Internet address to bind(2) to. If you leave it out, |
86 |
# it takes the behavior before 0.93.17.2, which is to bind to all |
87 |
# addresses (INADDR_ANY). You only get one "Listen" directive, |
88 |
# if you want service on multiple IP addresses, you have three choices: |
89 |
# 1. Run boa without a "Listen" directive |
90 |
# a. All addresses are treated the same; makes sense if the addresses |
91 |
# are localhost, ppp, and eth0. |
92 |
# b. Use the VirtualHost directive below to point requests to different |
93 |
# files. Should be good for a very large number of addresses (web |
94 |
# hosting clients). |
95 |
# 2. Run one copy of boa per IP address, each has its own configuration |
96 |
# with a "Listen" directive. No big deal up to a few tens of addresses. |
97 |
# Nice separation between clients. |
98 |
# The name you provide gets run through inet_aton(3), so you have to use dotted |
99 |
# quad notation. This configuration is too important to trust some DNS. |
100 |
|
101 |
#Listen 192.68.0.5 |
102 |
|
103 |
# User: The name or UID the server should run as. |
104 |
# Group: The group name or GID the server should run as. |
105 |
|
106 |
User nobody |
107 |
Group nogroup |
108 |
|
109 |
# ServerAdmin: The email address where server problems should be sent. |
110 |
# Note: this is not currently used, except as an environment variable |
111 |
# for CGIs. |
112 |
|
113 |
#ServerAdmin root@localhost |
114 |
|
115 |
# ErrorLog: The location of the error log file. If this does not start |
116 |
# with /, it is considered relative to the server root. |
117 |
# Set to /dev/null if you don't want errors logged. |
118 |
# If unset, defaults to /dev/stderr |
119 |
|
120 |
ErrorLog /var/log/boa/error_log |
121 |
# Please NOTE: Sending the logs to a pipe ('|'), as shown below, |
122 |
# is somewhat experimental and might fail under heavy load. |
123 |
# "Usual libc implementations of printf will stall the whole |
124 |
# process if the receiving end of a pipe stops reading." |
125 |
#ErrorLog "|/usr/sbin/cronolog --symlink=/var/log/boa/error_log /var/log/boa/error-%Y%m%d.log" |
126 |
|
127 |
# AccessLog: The location of the access log file. If this does not |
128 |
# start with /, it is considered relative to the server root. |
129 |
# Comment out or set to /dev/null (less effective) to disable |
130 |
# Access logging. |
131 |
|
132 |
AccessLog /var/log/boa/access_log |
133 |
# Please NOTE: Sending the logs to a pipe ('|'), as shown below, |
134 |
# is somewhat experimental and might fail under heavy load. |
135 |
# "Usual libc implementations of printf will stall the whole |
136 |
# process if the receiving end of a pipe stops reading." |
137 |
#AccessLog "|/usr/sbin/cronolog --symlink=/var/log/boa/access_log /var/log/boa/access-%Y%m%d.log" |
138 |
|
139 |
# UseLocaltime: Logical switch. Uncomment to use localtime |
140 |
# instead of UTC time |
141 |
#UseLocaltime |
142 |
|
143 |
# VerboseCGILogs: this is just a logical switch. |
144 |
# It simply notes the start and stop times of cgis in the error log |
145 |
# Comment out to disable. |
146 |
|
147 |
#VerboseCGILogs |
148 |
|
149 |
# ServerName: the name of this server that should be sent back to |
150 |
# clients if different than that returned by gethostname + gethostbyname |
151 |
|
152 |
#ServerName www.your.org.here |
153 |
|
154 |
# VirtualHost: a logical switch. |
155 |
# Comment out to disable. |
156 |
# Given DocumentRoot /var/www, requests on interface 'A' or IP 'IP-A' |
157 |
# become /var/www/IP-A. |
158 |
# Example: http://localhost/ becomes /var/www/127.0.0.1 |
159 |
# |
160 |
# Not used until version 0.93.17.2. This "feature" also breaks commonlog |
161 |
# output rules, it prepends the interface number to each access_log line. |
162 |
# You are expected to fix that problem with a postprocessing script. |
163 |
|
164 |
#VirtualHost |
165 |
|
166 |
# DocumentRoot: The root directory of the HTML documents. |
167 |
# Comment out to disable server non user files. |
168 |
|
169 |
DocumentRoot /var/www |
170 |
|
171 |
# UserDir: The name of the directory which is appended onto a user's home |
172 |
# directory if a ~user request is recieved. |
173 |
|
174 |
UserDir public_html |
175 |
|
176 |
# DirectoryIndex: Name of the file to use as a pre-written HTML |
177 |
# directory index. Please MAKE AND USE THESE FILES. On the |
178 |
# fly creation of directory indexes can be _slow_. |
179 |
# Comment out to always use DirectoryMaker |
180 |
|
181 |
DirectoryIndex index.html |
182 |
|
183 |
# DirectoryMaker: Name of program used to create a directory listing. |
184 |
# Comment out to disable directory listings. If both this and |
185 |
# DirectoryIndex are commented out, accessing a directory will give |
186 |
# an error (though accessing files in the directory are still ok). |
187 |
|
188 |
DirectoryMaker /usr/lib/boa/boa_indexer |
189 |
|
190 |
# DirectoryCache: If DirectoryIndex doesn't exist, and DirectoryMaker |
191 |
# has been commented out, the the on-the-fly indexing of Boa can be used |
192 |
# to generate indexes of directories. Be warned that the output is |
193 |
# extremely minimal and can cause delays when slow disks are used. |
194 |
# Note: The DirectoryCache must be writable by the same user/group that |
195 |
# Boa runs as. |
196 |
|
197 |
# DirectoryCache /var/spool/boa/dircache |
198 |
|
199 |
# KeepAliveMax: Number of KeepAlive requests to allow per connection |
200 |
# Comment out, or set to 0 to disable keepalive processing |
201 |
|
202 |
KeepAliveMax 1000 |
203 |
|
204 |
# KeepAliveTimeout: seconds to wait before keepalive connection times out |
205 |
|
206 |
KeepAliveTimeout 10 |
207 |
|
208 |
# MimeTypes: This is the file that is used to generate mime type pairs |
209 |
# and Content-Type fields for boa. |
210 |
# Set to /dev/null if you do not want to load a mime types file. |
211 |
# Do *not* comment out (better use AddType!) |
212 |
|
213 |
MimeTypes /etc/mime.types |
214 |
|
215 |
# DefaultType: MIME type used if the file extension is unknown, or there |
216 |
# is no file extension. |
217 |
|
218 |
DefaultType text/plain |
219 |
|
220 |
# CGIPath: The value of the $PATH environment variable given to CGI progs. |
221 |
|
222 |
CGIPath /bin:/usr/bin:/usr/local/bin |
223 |
|
224 |
# SinglePostLimit: The maximum allowable number of bytes in |
225 |
# a single POST. Default is normally 1MB. |
226 |
|
227 |
# AddType: adds types without editing mime.types |
228 |
# Example: AddType type extension [extension ...] |
229 |
|
230 |
# Uncomment the next line if you want .cgi files to execute from anywhere |
231 |
#AddType application/x-httpd-cgi cgi |
232 |
|
233 |
# Redirect, Alias, and ScriptAlias all have the same semantics -- they |
234 |
# match the beginning of a request and take appropriate action. Use |
235 |
# Redirect for other servers, Alias for the same server, and ScriptAlias |
236 |
# to enable directories for script execution. |
237 |
|
238 |
# Redirect allows you to tell clients about documents which used to exist in |
239 |
# your server's namespace, but do not anymore. This allows you to tell the |
240 |
# clients where to look for the relocated document. |
241 |
# Example: Redirect /bar http://elsewhere/feh/bar |
242 |
|
243 |
# Aliases: Aliases one path to another. |
244 |
# Example: Alias /path1/bar /path2/foo |
245 |
|
246 |
Alias /doc /usr/doc |
247 |
|
248 |
# ScriptAlias: Maps a virtual path to a directory for serving scripts |
249 |
# Example: ScriptAlias /htbin/ /www/htbin/ |
250 |
|
251 |
ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/ |
252 |
|