httpd(8) - OpenBSD manual pages (original) (raw)

HTTPD(8) OpenBSD System Manager's Manual HTTPD(8)

NAME httpd - Apache Hypertext Transfer Protocol Server

SYNOPSIS httpd [-FhLlSTtuVvX] [-C directive] [-c directive] [-D parameter] [-d serverroot] [-f config] [-R libexecdir]

DESCRIPTION httpd is the Apache 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 OpenBSD 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 doc-
 uments 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 adjustment 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) function-
 ality.

 This manual page only lists the command line arguments.  For details of
 the directives necessary to configure **httpd**, see the Apache manual in
 _/var/www/htdocs/manual/_.  Paths in this manual page reflect those com-
 piled into **httpd** by default with OpenBSD.

 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 <IfDe-
         fine>...</IfDefine> sections in the configuration files to condi-
         tionally 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 Document-
         Root 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 ex-
         panded "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 ALSO dbmmanage(1), htdigest(1), htpasswd(1), chroot(2), apachectl(8), apxs(8), inetd(8), logresolve(8), rc.conf.local(8), rotatelogs(8), ssl(8), suexec(8)

 The Apache manual: _/var/www/htdocs/manual/_.

OpenBSD 4.0 September 18, 2002 3