Apache HTTP Server
Starting Apache
Starting Apache On Windows
On Windows, Apache is normally run as a service on Windows NT, or
as a console application on Windows 95. For details, see running Apache for Windows.
Starting Apache on Unix
On Unix, the httpd
program is run as a daemon which
executes continuously in the background to handle requests. It is
possible to invoke Apache by the Internet daemon inetd
each time a connection to the HTTP service is made (use the ServerType directive) but this is
not recommended.
A shell script called apachectl
is
provided which can be used to control the daemon process. This shell
script can often be used as an init script to start httpd
on system boot, or it can be called directly with the options listed
below.
If the Port specified in the
configuration file is the default of 80, then it is necessary to have
root privileges in order to start apache. If Apache will not start
and no error messages are printed to the console, be sure to check the
ErrorLog for a report of
the problem. See also the debugging instructions outlined in
the Apache FAQ.
apachectl Command Line Options
start
- Start
httpd
. If
additional command line options need to be passed to
httpd
(see below), then the HTTPD
variable
at the top of the apachectl
script should be edited to
include them.
stop
- Stop
httpd
by issuing the kill signal to the
parent httpd
process, whose process ID is contained
in the file pointed to by the
PidFile directive.
restart
- Restart
httpd
if it is running by sending a
SIGHUP
signal to the parent process. If the server is not running, then
it will be started. apachectl
will refuse to
restart the server if there is a syntax error in the configuration
files (see configtest
below).
graceful
- Restart
httpd
if it is
running by sending a SIGWINCH
signal to the parent
process. This type of restart is less disruptive to current clients.
If the server is not running, then it will be
started. apachectl
will refuse to restart the server if
there is a syntax error in the configuration files.
fullstatus
- Show a screen indicating the status of the Apache processes.
This option requires the presence of
lynx
, and
for mod_status to be enabled.
status
- A shorter form of the
fullstatus
display.
This option requires the presence of lynx
, and
for mod_status to be enabled.
configtest
- Do a syntax test of the Apache configuration files. See
the
httpd -t
command line option below.
help
- Show a help screen.
For additional information on the effects of the various
apachectl
options, see the documentation on stopping and restarting Apache.
Command line options
The following options are recognized on the httpd command line:
-d
serverroot
- Set the initial value for the
ServerRoot variable to
serverroot. This can be overridden by the ServerRoot command
in the configuration file. The default is
/usr/local/apache
on Unix, /apache
on
Windows and /os2httpd
on OS/2.
-D
name
- Define a name for use in
IfDefine directives.
This option can be used to optionally enable certain functionality in the
configuration file, or to use a common configuration for
several independent hosts, where host specific information is enclosed in
<IfDefine> sections.
-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
.
-C
"directive"
- Process the given apache "directive" (just as if it had been part of a
configuration file) before actually reading the regular configuration files.
-c
"directive"
- Process the given apache "directive" after reading
all the regular configuration files.
-X
- Run in single-process mode, for internal debugging purposes only; the
daemon does not detach from the terminal or fork any children. Do NOT
use this mode to provide ordinary web service.
-v
- Print the version of httpd and its build date, and then exit.
-V
- Print the base version of httpd, its
build date, and a list of compile time settings which influence the
behavior and performance of the apache server (e.g.,
-DUSE_MMAP_FILES),
then exit.
-L
-
Give a list of directives together with expected arguments and places
where the directive is valid, then exit. (Apache 1.3.4 and
later. Earlier versions used -l instead).
-l
-
Give a list of all modules compiled into the server, then exit.
(Apache 1.3.4 and later. Earlier versions used -h instead).
Give a list of directives together with expected arguments and places
where the directive is valid, then exit. (Apache 1.2 to 1.3.3. Later
versions use -L instead).
-h
-
Print a list of the httpd options, then exit. (Apache 1.3.4 and
later. Earlier versions used -? instead).
Give a list of all modules compiled into the server, then exit. (Up to
Apache 1.3.3. Later versions use -l instead).
-S
- Show the settings as parsed from the config file (currently only
shows a breakdown of the vhost settings) but do not start the
server. (Up to Apache 1.3.3, this option also started the server).
-t
- Test the configuration file syntax (i.e., read all configuration files
and interpret them) but do not start the server. If the configuration contains
errors, display an error message and exit with a non-zero exit status,
otherwise display "Syntax OK" and terminate with a zero exit status. This
command checks to see if all DocumentRoot entries exist and are directories.
For sites with many vhosts, this is expensive; consider the
-T
command instead.
-T
- Test the configuration file syntax (i.e., read all configuration files
and interpret them) but do not start the server. If the configuration contains
errors, display an error message and exit with a non-zero exit status,
otherwise display "Syntax OK" and terminate with a zero exit status. This
command does not perform any checking of the DocumentRoot entries.
-k
option
- Windows only: signal Apache to restart or shutdown. option
is one of "shutdown" or "restart". (Apache 1.3.3 and later).
-?
- Print a list of the httpd options, and then exit (up to Apache
1.3.3. Later versions use -h instead).
-R
directory
- If Apache is compiled with
SHARED_CORE
, then this
directive can be used to specify an alternate location for shared
object files.
When Apache is used under Windows, the following additional
command line options are available.
-n
name
- Set service name and use its ServerConfigFile.
-k
option
- Signal Apache to restart or shutdown. option
is one of "shutdown" or "restart".
-i
- Install an Apache service
-u
- Uninstall an Apache Service
Apache HTTP Server