mirror of
https://github.com/apache/httpd.git
synced 2025-08-27 16:41:57 +03:00
not do DirectoryRoot checking. This assumes: 1. command-line options are prefered over Config directives 2. we want to maintain current behavior while making life easier for mass vhosting 3. everybody's happy I leave the decision to whether apachectl should use -t or -T to others. PR: Obtained from: Submitted by: Reviewed by: git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@83411 13f79535-47bb-0310-9956-ffa450edef68
221 lines
8.4 KiB
Plaintext
221 lines
8.4 KiB
Plaintext
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
|
|
<HTML>
|
|
<HEAD>
|
|
<TITLE>Starting Apache</TITLE>
|
|
</HEAD>
|
|
|
|
<!-- Background white, links blue (unvisited), navy (visited), red (active) -->
|
|
<BODY
|
|
BGCOLOR="#FFFFFF"
|
|
TEXT="#000000"
|
|
LINK="#0000FF"
|
|
VLINK="#000080"
|
|
ALINK="#FF0000"
|
|
>
|
|
<!--#include virtual="header.html" -->
|
|
<H1 ALIGN="CENTER">Starting Apache</H1>
|
|
|
|
<H2>Invoking Apache</H2>
|
|
|
|
On Unix, the <CODE>httpd</CODE> program is usually run as a daemon
|
|
which executes continuously, handling requests. It is possible to
|
|
invoke Apache by the Internet daemon <CODE>inetd</CODE> each time a
|
|
connection to the HTTP service is made (use the <A
|
|
HREF="mod/core.html#servertype">ServerType</A> directive) but this is
|
|
not recommended.
|
|
|
|
<P>
|
|
|
|
On Windows, Apache is normally run as a service on Windows NT, or as a
|
|
console application on Windows 95. See also <A
|
|
HREF="windows.html#run">running Apache for Windows</A>.
|
|
|
|
<H2>Command line options</H2>
|
|
The following options are recognized on the httpd command line:
|
|
<DL>
|
|
<DT><CODE>-d</CODE> <EM>serverroot</EM>
|
|
<DD>Set the initial value for the
|
|
<A HREF="mod/core.html#serverroot">ServerRoot</A> variable to
|
|
<EM>serverroot</EM>. This can be overridden by the ServerRoot command
|
|
in the configuration file. The default is
|
|
<CODE>/usr/local/apache</CODE> on Unix, <CODE>/apache</CODE> on
|
|
Windows and <CODE>/os2httpd</CODE> on OS/2.
|
|
|
|
<DT><CODE>-D</CODE> <EM>name</EM>
|
|
<DD>Define a name for use in in
|
|
<A HREF="mod/core.html#ifdefine">IfDefine</A> 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.
|
|
|
|
<DT><CODE>-f</CODE> <EM>config</EM>
|
|
<DD>Execute the commands in the file <EM>config</EM> on startup. If
|
|
<EM>config</EM> does not begin with a <CODE>/</CODE>, then it is taken to be a
|
|
path relative to the <A HREF="mod/core.html#serverroot">ServerRoot</A>. The
|
|
default is <CODE>conf/httpd.conf</CODE>.
|
|
|
|
<DT><CODE>-C</CODE> <EM>"directive"</EM>
|
|
<DD>Process the given apache "directive" (just as if it had been part of a
|
|
configuration file) <STRONG>before</STRONG> actually reading the regular configuration files.
|
|
|
|
<DT><CODE>-c</CODE> <EM>"directive"</EM>
|
|
<DD>Process the given apache "directive" <STRONG>after</STRONG> reading
|
|
all the regular configuration files.
|
|
|
|
<DT><CODE>-X</CODE>
|
|
<DD>Run in single-process mode, for internal debugging purposes only; the
|
|
daemon does not detach from the terminal or fork any children. Do <EM>NOT</EM>
|
|
use this mode to provide ordinary web service.
|
|
|
|
<DT><CODE>-v</CODE>
|
|
<DD>Print the version of httpd and its build date, and then exit.
|
|
|
|
<DT><A NAME="version"><CODE>-V</CODE></A>
|
|
<DD>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 (<EM>e.g.</EM>,
|
|
<SAMP>-DUSE_MMAP_FILES</SAMP>),
|
|
then exit.
|
|
|
|
<DT><A NAME="help"><CODE>-L</CODE></A>
|
|
<DD>
|
|
|
|
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).
|
|
|
|
|
|
<DT><CODE>-l</CODE></A>
|
|
<DD>
|
|
|
|
Give a list of all modules compiled into the server, then exit.
|
|
(Apache 1.3.4 and later. Earlier versions used -h instead).<br>
|
|
|
|
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).
|
|
|
|
|
|
|
|
<DT><CODE>-h</CODE>
|
|
<DD>
|
|
|
|
Print a list of the httpd options, then exit. (Apache 1.3.4 and
|
|
later. Earlier versions used -? instead).<br>
|
|
|
|
Give a list of all modules compiled into the server, then exit. (Up to
|
|
Apache 1.3.3. Later versions use -l instead).<br>
|
|
|
|
|
|
<DT><CODE>-S</CODE>
|
|
<DD>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).
|
|
|
|
<DT><CODE>-t</CODE>
|
|
<DD>Test the configuration file syntax (<EM>i.e.</EM>, 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 <CODE>-T</CODE>
|
|
command instead.
|
|
|
|
<DT><CODE>-T</CODE>
|
|
<DD>Test the configuration file syntax (<EM>i.e.</EM>, 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.
|
|
|
|
<DT><CODE>-k</CODE> <EM>option</EM>
|
|
<DD>Windows only: signal Apache to restart or shutdown. <EM>option</EM>
|
|
is one of "shutdown" or "restart". (Apache 1.3.3 and later).
|
|
|
|
<DT><CODE>-?</CODE>
|
|
<DD>Print a list of the httpd options, and then exit (up to Apache
|
|
1.3.3. Later version use -h instead).
|
|
|
|
</DL>
|
|
|
|
<H2>Configuration files</H2>
|
|
The server will read three files for configuration directives. Any
|
|
directive may appear in any of these files. The the names of these
|
|
files are taken to be relative to the server root; this is set by the
|
|
<A HREF="mod/core.html#serverroot">ServerRoot</A> directive, the
|
|
<CODE>-d</CODE> command line flag, or (on Windows only) the registry
|
|
(see <A HREF="windows.html#run">Running Apache for Windows</A>).
|
|
|
|
Conventionally, the files are:
|
|
<DL>
|
|
<DT><CODE>conf/httpd.conf</CODE>
|
|
<DD>Contains directives that control the operation of the server daemon.
|
|
The filename may be overridden with the <CODE>-f</CODE> command line flag.
|
|
|
|
<DT><CODE>conf/srm.conf</CODE>
|
|
<DD>Contains directives that control the specification of documents that
|
|
the server can provide to clients. The filename may be overridden with
|
|
the <A HREF="mod/core.html#resourceconfig">ResourceConfig</A> directive.
|
|
|
|
<DT><CODE>conf/access.conf</CODE>
|
|
<DD>Contains directives that control access to documents.
|
|
The filename may be overridden with the
|
|
<A HREF="mod/core.html#accessconfig">AccessConfig</A> directive.
|
|
</DL>
|
|
However, these conventions need not be adhered to.
|
|
<P>
|
|
The server also reads a file containing mime document types; the filename
|
|
is set by the <A HREF="mod/mod_mime.html#typesconfig">TypesConfig</A>
|
|
directive,
|
|
and is <CODE>conf/mime.types</CODE> by default.
|
|
|
|
<H2>Log files</H2>
|
|
<H3>security warning</H3>
|
|
Anyone who can write to the directory where Apache is writing a
|
|
log file can almost certainly gain access to the uid that the server is
|
|
started as, which is normally root. Do <EM>NOT</EM> give people write
|
|
access to the directory the logs are stored in without being aware of
|
|
the consequences; see the <A HREF="misc/security_tips.html">security tips</A>
|
|
document for details.
|
|
<H3>pid file</H3>
|
|
|
|
On startup, Apache saves the process id of the parent httpd process to
|
|
the file <CODE>logs/httpd.pid</CODE>. This filename can be changed
|
|
with the <A HREF="mod/core.html#pidfile">PidFile</A> directive. The
|
|
process-id is for use by the administrator in restarting and
|
|
terminating the daemon: on Unix, a HUP or USR1 signal causes the
|
|
daemon to re-read its configuration files and a TERM signal causes it
|
|
to die gracefully; on Windows, use the -k command line option instead.
|
|
For more information see the <A HREF="stopping.html">Stopping and
|
|
Restarting</A> page.
|
|
|
|
<P>
|
|
If the process dies (or is killed) abnormally, then it will be necessary to
|
|
kill the children httpd processes.
|
|
|
|
<H3>Error log</H3>
|
|
|
|
The server will log error messages to a log file, by default
|
|
<CODE>logs/error_log</CODE> on Unix or <CODE>logs/error.log</CODE> on
|
|
Windows and OS/2. The filename can be set using the <A
|
|
HREF="mod/core.html#errorlog">ErrorLog</A> directive; different error
|
|
logs can be set for different <A
|
|
HREF="mod/core.html#virtualhost">virtual hosts</A>.
|
|
|
|
<H3>Transfer log</H3>
|
|
|
|
The server will typically log each request to a transfer file, by
|
|
default <CODE>logs/access_log</CODE> on Unix or
|
|
<CODE>logs/access.log</CODE> on Windows and OS/2. The filename can be
|
|
set using a <A
|
|
HREF="mod/mod_log_config.html#transferlog">TransferLog</A> directive
|
|
or additional log files created with the <A
|
|
HREF="mod/mod_log_config.html#customlog">CustomLog</A> directive;
|
|
different transfer logs can be set for different <A
|
|
HREF="mod/core.html#virtualhost">virtual hosts</A>.
|
|
|
|
<!--#include virtual="footer.html" -->
|
|
</BODY>
|
|
</HTML>
|