httpd - Apache Hypertext Transfer Protocol Server - Apache HTTP Server Version 2.2

Apache HTTP Server Version 2.2

Apache > HTTP Server > Documentation > Version 2.2 > Programs

#### Please note

This document refers to a legacy release (2.2) of Apache httpd. The active release (2.4) is documented here. If you have not already upgraded, please follow this link for more information.

You may follow this link to go to the current version of this document.

# httpd - Apache Hypertext Transfer Protocol Server

Available Languages: en | ko | tr

`httpd` is the Apache HyperText Transfer Protocol (HTTP) server program. It is designed to be run as a standalone daemon process. When used like this it will create a pool of child processes or threads to handle requests.

In general, `httpd` should not be invoked directly, but rather should be invoked via `apachectl` on Unix-based systems or as a service on Windows NT, 2000 and XP and as a console application on Windows 9x and ME.

### See also

- Starting Apache httpd
- Stopping Apache httpd
- Configuration Files
- Platform-specific Documentation
- `apachectl`

- Comments

## Synopsis

`httpd [ -d serverroot ] [ -f config ] [ -C directive ] [ -c directive ] [ -D parameter ] [ -e level ] [ -E file ] [ -k start|restart|graceful|stop|graceful-stop ] [ -h ] [ -l ] [ -L ] [ -S ] [ -t ] [ -v ] [ -V ] [ -X ] [ -M ] [ -T ]`

On Windows systems, the following additional arguments are available:

`httpd [ -k install|config|uninstall ] [ -n name ] [ -w ]`

## Options

`-d serverroot`
  Set the initial value for the `ServerRoot` directive to serverroot. This can be overridden by the ServerRoot directive in the configuration file. The default is `/usr/local/apache2`.
`-f config`
  Uses the directives 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`.
`-k `start|restart|graceful|stop|graceful-stop``
  Signals `httpd` to start, restart, or stop. See Stopping Apache httpd for more information.
`-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>` sections in the configuration files to conditionally skip or process commands at server startup and restart. Also can be used to set certain less-common startup parameters including `-DNO_DETACH` (prevent the parent from forking) and `-DFOREGROUND` (prevent the parent from calling `setsid()` et al).
`-e level`
  Sets the `LogLevel` to level during server startup. This is useful for temporarily increasing the verbosity of the error messages to find problems during startup.
`-E file`
  Send error messages during server startup to file.
`-R directory`
  When the server is compiled using the `SHARED_CORE` rule, this specifies the directory for the shared object files.
`-h`
  Output a short summary of available command line options.
`-l`
  Output a list of modules compiled into the server. This will not list dynamically loaded modules included using the `LoadModule` directive.
`-L`
  Output a list of directives together with expected arguments and places where the directive is valid.
`-M`
  Dump a list of loaded Static and Shared Modules.
`-S`
  Show the settings as parsed from the config file (currently only shows the virtualhost settings).
`-T` (Available in 2.2.17 and later)
  Skip document root check at startup/restart.
`-t`
  Run syntax tests for configuration files only. The program immediately exits after these syntax parsing tests with either a return code of 0 (Syntax OK) or return code not equal to 0 (Syntax Error). If -D DUMP_VHOSTS is also set, details of the virtual host configuration will be printed. If -D DUMP_MODULES is set, all loaded modules will be printed.
`-v`
  Print the version of `httpd`, and then exit.
`-V`
  Print the version and build parameters of `httpd`, and then exit.
`-X`
  Run httpd in debug mode. Only one worker will be started and the server will not detach from the console.

The following arguments are available only on the Windows platform:

`-k install|config|uninstall`
  Install Apache httpd as a Windows NT service; change startup options for the Apache httpd service; and uninstall the Apache httpd service.
`-n name`
  The name of the Apache httpd service to signal.
`-w`
  Keep the console window open on error so that the error message can be read.

Available Languages: en | ko | tr

## Comments

Notice:
This is not a Q&A section. Comments placed here should be pointed towards suggestions on improving the documentation or server, and may be removed again by our moderators if they are either implemented or considered invalid/off-topic. Questions on how to manage the Apache HTTP Server should be directed at either our IRC channel, #httpd, on Freenode, or sent to our mailing lists.