HTTPD(8) BSD System Manager's Manual HTTPD(8)NAMEhttpd - Hypertext Transfer Protocol Daemon
SYNOPSIShttpd [-46FhLlSTtuVvX] [-C directive] [-c directive] [-D parameter]
[-d serverroot] [-f config] [-R libexecdir]
DESCRIPTIONhttpd is the MirOS HyperText Transfer Protocol (HTTP) server program. It
is designed to be run as a stand-alone daemon process. When used like
this it will create a pool of child processes to handle requests. To stop
it, send a TERM signal to the initial (parent) process. The PID of this
process is written to a file as given in the configuration file. Normally
this service can be enabled for startup on MirOS by editing
/etc/rc.conf.local.
Alternatively, httpd may be invoked by the Internet daemon inetd(8) each
time a connection to the HTTP service is made.
httpd can be made to support HTTPS transactions if RSA certificates are
generated and the utility is started with the -DSSL flag. See ssl(8) for
further information.
By default, httpd will chroot(2) to the "ServerRoot" path, serving docu-
ments from the "DocumentRoot" path. As a result of the default secure
behaviour, httpd cannot access any objects outside "ServerRoot" - this
security measure is taken in case httpd is compromised. This is not
without drawbacks, though:
CGI programs may fail due to the limited environment available inside
this chroot space. "UserDir", of course, cannot access files outside the
directory space. Other modules will also have issues. "DocumentRoot"
directories or any other files needed must be inside "ServerRoot". For
this to work, pathnames inside the configuration file do not need adjust-
ment relative to "ServerRoot". For this option to remain secure, it is
important that no files or directories writable by user www or group www
are created inside the "ServerRoot".
The -u option (see below) can be specified to disable chroot(2) func-
tionality.
This manual page only lists the command line arguments. For details of
the directives necessary to configure httpd, see a local copy of the
Apache(TM) manual in /var/www/htdocs/manual/. This manual is not 100% ac-
curate for MirOS httpd though. Paths in this manual page reflect those
compiled into httpd by default with MirOS.
The options are as follows:
-C directive
Process the configuration directive before reading config files.
-c directive
Process the configuration directive after reading config files.
-D parameter
Sets a configuration parameter which can be used with
<IfDefine>...</IfDefine> sections in the configuration files to
conditionally skip or process commands.
-d serverroot
Set the initial value for the "ServerRoot" directive to
serverroot. This can be overridden by the "ServerRoot" command in
the configuration file. The default is /var/www.
-F Run the main process in foreground. For process supervisors.
-f config
Execute the commands in the file config on startup. If config
does not begin with a /, then it is taken to be a path relative
to the ServerRoot. The default is conf/httpd.conf.
-h Output a short summary of available command line options.
-L Output a list of directives together with expected arguments and
places where the directive is valid.
-l Output a list of modules compiled into the server.
-R libexecdir
This option is only available if httpd was built with the
SHARED_CORE rule enabled which forces the httpd core code to be
placed into a dynamic shared object (DSO) file. This file is
searched in a hardcoded path under ServerRoot per default. Use
this option to override.
-S Show the settings as parsed from the config file (currently only
shows the virtualhost settings).
-T Run syntax tests for configuration files only, without Documen-
tRoot checks. The program immediately exits after this syntax
parsing with either a return code of 0 (Syntax OK) or return code
not equal to 0 (Syntax Error).
-t Run syntax tests for configuration files only, including Documen-
tRoot checks. The program immediately exits after this syntax
parsing with either a return code of 0 (Syntax OK) or return code
not equal to 0 (Syntax Error).
-u By default httpd will chroot(2) to the "ServerRoot" path. The -u
option disables this behaviour, and returns httpd to the expanded
"unsecure" behaviour.
-V Print the version and build parameters of httpd, and then exit.
-v Print the version of httpd, and then exit.
-X Run in single-process mode, for internal debugging purposes only;
the daemon does not detach from the terminal or fork any chil-
dren. Do NOT use this mode to provide ordinary web service.
The documents served by httpd should not be owned by the user which httpd
is running as (usually user www and group www). They must, however, be
readable by this user.
FILES
/var/www/cgi-bin/
/var/www/conf/httpd.conf
/var/www/conf/httpd.conf-dist
/var/www/conf/magic
/var/www/conf/mime.types
/var/www/icons/
/var/www/logs/access_log
/var/www/logs/error_log
/var/www/logs/etag-state
/var/www/logs/httpd.pid
/var/www/logs/ssl_engine_log
/var/www/logs/ssl_request_log
/var/www/logs/ssl_scache.db
/var/www/users/
/etc/rc.conf.local
SEE ALSOdbmmanage(1), htdigest(1), htpasswd(1), chroot(2), apxs(8), inetd(8),
logresolve(8), rc.conf.local(8), rotatelogs(8), ssl(8), suexec(8)
The MirOS httpd manual: /var/www/htdocs/manual/.
MirOS BSD #10-current March 19, 2008 2