summaryrefslogtreecommitdiff
path: root/usr.sbin/httpd/htdocs/manual/configuring.html.html
diff options
context:
space:
mode:
Diffstat (limited to 'usr.sbin/httpd/htdocs/manual/configuring.html.html')
-rw-r--r--usr.sbin/httpd/htdocs/manual/configuring.html.html253
1 files changed, 253 insertions, 0 deletions
diff --git a/usr.sbin/httpd/htdocs/manual/configuring.html.html b/usr.sbin/httpd/htdocs/manual/configuring.html.html
new file mode 100644
index 00000000000..f32f3e637ac
--- /dev/null
+++ b/usr.sbin/httpd/htdocs/manual/configuring.html.html
@@ -0,0 +1,253 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
+<HTML>
+<HEAD>
+<TITLE>Configuration Files</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">Configuration Files</H1>
+
+<ul>
+<li><a href="#main">Main Configuration Files</a></li>
+<li><a href="#syntax">Syntax of the Configuration Files</a></li>
+<li><a href="#modules">Modules</a></li>
+<li><a href="#scope">Scope of Directives</a></li>
+<li><a href="#htaccess">.htaccess Files</a></li>
+<li><a href="#logs">Log Files</a></li>
+</ul>
+
+<hr>
+
+<H2><a name="main">Main Configuration Files</a></H2>
+
+<table border="1"><tr><td valign="top">
+<strong>Related Modules</strong><br><br>
+<a href="mod/mod_mime.html">mod_mime</a><br>
+</td>
+
+<td valign="top">
+<strong>Related Directives</strong><br><br>
+<A HREF="mod/core.html#accessconfig">AccessConfig</A><br>
+<A HREF="mod/core.html#ifdefine">&lt;IfDefine&gt;</A><br>
+<a href="mod/core.html#include">Include</a><br>
+<A HREF="mod/core.html#resourceconfig">ResourceConfig</A><br>
+<A HREF="mod/mod_mime.html#typesconfig">TypesConfig</A><br>
+</td></tr></table>
+
+<P>Apache is configured by placing <A HREF="mod/directives.html"
+>directives</A> in plain text configuration files. The main
+configuration file is usually called <CODE>httpd.conf</CODE>. The
+location of this file is set at compile-time, but may be overridden
+with the <CODE>-f</CODE> command line flag. Some sites also have
+<CODE>srm.conf</CODE> and <CODE>access.conf</CODE> files for <A
+HREF="http://www.apache.org/info/three-config-files.html">historical
+reasons</A>. In addition, other configuration files may be added using
+the <CODE><A HREF="mod/core.html#include">Include</A></CODE>
+directive. Any directive may be placed in any of these configuration
+files. Changes to the main configuration files are only recognized by
+Apache when it is started or restarted.</p>
+
+<P>New with Apache 1.3.13 is a feature where if any configuration
+file is actually a directory, Apache will enter that directory
+and parse any files (and subdirectories) found there as configuration
+files. One possible use for this would be to add VirtualHosts
+by creating small configuration files for each host, and placing
+them in such a configuration directory. Thus, you can add or
+remove VirtualHosts without editing any files at all, simply
+adding or deleting them. This makes automating such processes
+much easier.
+
+<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>mime.types</CODE> by default.
+
+<hr>
+
+<H2><a name="syntax">Syntax of the Configuration Files</a></H2>
+
+<P>Apache configuration files contain one directive per line. The
+back-slash "\" may be used as the last character on a line to indicate
+that the directive continues onto the next line. There must be no
+other characters or white space between the back-slash and the end of
+the line.
+
+<P>Directives in the configuration files are case-insensitive, but
+arguments to directives are often case sensitive. Lines which begin
+with the hash character "#" are considered comments, and are ignored.
+Comments may <STRONG>not</STRONG> be included on a line after a
+configuration directive. Blank lines and white space occurring before
+a directive are ignored, so you may indent directives for clarity.
+
+<P>You can check your configuration files for syntax errors without
+starting the server by using <CODE>apachectl configtest</CODE>
+or the <CODE>-t</CODE> command line option.
+
+<hr>
+
+<H2><a name="modules">Modules</a></H2>
+
+<table border="1"><tr><td valign="top">
+<strong>Related Modules</strong><br><br>
+<a href="mod/mod_so.html">mod_so</a><br>
+</td>
+<td valign="top">
+<strong>Related Directives</strong><br><br>
+<A HREF="mod/core.html#addmodule">AddModule</A><br>
+<A HREF="mod/core.html#clearmodulelist">ClearModuleList</A><br>
+<A HREF="mod/core.html#ifmodule">&lt;IfModule&gt;</A><br>
+<a href="mod/mod_so.html#loadmodule">LoadModule</a><br>
+</td></tr></table>
+
+<P>Apache is a modular server. This implies that only the most basic
+functionality is included in the core server. Extended features are
+available through <A HREF="mod/index-bytype.html">modules</A> which
+can be loaded into Apache. By default, a <A
+HREF="mod/module-dict.html#Status">base</A> set of modules is
+included in the server at compile-time. If the server is compiled to
+use <A HREF="dso.html">dynamically loaded</A> modules, then modules
+can be compiled separately and added at any time using the <A
+HREF="mod/mod_so.html#loadmodule">LoadModule</A> directive.
+Otherwise, Apache must be recompiled to add or remove modules.
+Configuration directives may be included conditional on a presence of
+a particular module by enclosing them in an <A
+HREF="mod/core.html#ifmodule">&lt;IfModule&gt;</A> block.
+
+<P>To see which modules are currently compiled into the server,
+you can use the <CODE>-l</CODE> command line option.
+
+<hr>
+
+<H2><a name="scope">Scope of Directives</a></H2>
+
+<table border="1"><tr><td valign="top">
+<strong>Related Directives</strong><br><br>
+<A HREF="mod/core.html#directory">&lt;Directory&gt;</A><br>
+<A HREF="mod/core.html#directorymatch">&lt;DirectoryMatch&gt;</A><br>
+<A HREF="mod/core.html#files">&lt;Files&gt;</A><br>
+<A HREF="mod/core.html#filesmatch">&lt;FilesMatch&gt;</A><br>
+<A HREF="mod/core.html#location">&lt;Location&gt;</A><br>
+<A HREF="mod/core.html#locationmatch">&lt;LocationMatch&gt;</A><br>
+<a href="mod/core.html#virtualhost">&lt;VirtualHost&gt;</a><br>
+</td></tr></table>
+
+<P>Directives placed in the main configuration files apply to the entire
+server. If you wish to change the configuration for only a part of
+the server, you can scope your directives by placing them in
+<CODE><A HREF="mod/core.html#directory">&lt;Directory&gt;</A>,
+<A HREF="mod/core.html#directorymatch">&lt;DirectoryMatch&gt;</A>,
+<A HREF="mod/core.html#files">&lt;Files&gt;</A>,
+<A HREF="mod/core.html#filesmatch">&lt;FilesMatch&gt;</A>,
+<A HREF="mod/core.html#location">&lt;Location&gt;</A>,
+</CODE> and <CODE>
+<A HREF="mod/core.html#locationmatch">&lt;LocationMatch&gt;</A>
+</CODE>
+sections. These sections limit the application of the directives
+which they enclose to particular filesystem locations or URLs. They
+can also be nested, allowing for very fine grained configuration.
+
+<P>Apache has the capability to serve many different websites
+simultaneously. This is called <A HREF="vhosts/">Virtual Hosting</A>.
+Directives can also be scoped by placing them inside
+<CODE><A HREF="mod/core.html#virtualhost">&lt;VirtualHost&gt;</A></CODE>
+sections, so that they will only apply to requests for a particular
+website.
+
+<P>Although most directives can be placed in any of these sections,
+some directives do not make sense in some contexts. For example,
+directives controlling process creation can only be placed in the main
+server context. To find which directives can be placed in which
+sections, check the <A
+HREF="mod/directive-dict.html#Context">Context</A> of the directive.
+For further information, we provide details on <A
+HREF="sections.html">How Directory, Location and Files sections
+work</A>.
+
+<hr>
+
+<H2><a name="htaccess">.htaccess Files</a></H2>
+
+<table border="1"><tr><td valign="top">
+<strong>Related Directives</strong><br><br>
+<A HREF="mod/core.html#accessfilename">AccessFileName</A><br>
+<A HREF="mod/core.html#allowoverride">AllowOverride</A><br>
+</td></tr></table>
+
+<P>Apache allows for decentralized management of configuration via
+special files placed inside the web tree. The special files are
+usually called <CODE>.htaccess</CODE>, but any name can be specified
+in the <A HREF="mod/core.html#accessfilename"><CODE
+>AccessFileName</CODE></A> directive. Directives placed in
+<CODE>.htaccess</CODE> files apply to the directory where you place
+the file, and all sub-directories. The <CODE>.htaccess</CODE> files
+follow the same syntax as the main configuration files. Since
+<CODE>.htaccess</CODE> files are read on every request, changes made
+in these files take immediate effect.
+
+<P>To find which directives can be placed in <CODE>.htaccess</CODE>
+files, check the <A HREF="mod/directive-dict.html#Context">Context</A>
+of the directive. The server administrator further controls what
+directives may be placed in <CODE>.htaccess</CODE> files by
+configuring the <A
+HREF="mod/core.html#allowoverride"><CODE>AllowOverride</CODE></A>
+directive in the main configuration files.
+
+<hr>
+
+<H2><a name="logs">Log files</a></H2>
+<!-- This section should be moved to its own file -->
+<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>
+
+<P>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>
+
+<P>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>
+
+<P>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#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>
+