diff options
Diffstat (limited to 'usr.sbin/httpd/htdocs/manual/install.html.en')
-rw-r--r-- | usr.sbin/httpd/htdocs/manual/install.html.en | 194 |
1 files changed, 194 insertions, 0 deletions
diff --git a/usr.sbin/httpd/htdocs/manual/install.html.en b/usr.sbin/httpd/htdocs/manual/install.html.en new file mode 100644 index 00000000000..cd9126366cb --- /dev/null +++ b/usr.sbin/httpd/htdocs/manual/install.html.en @@ -0,0 +1,194 @@ +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN"> +<HTML> +<HEAD> +<TITLE>Compiling and Installing 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">Compiling and Installing Apache 1.3</H1> + +<P>This document covers compilation and installation of Apache on Unix +systems, using the manual build and install method. If you wish to +use the autoconf-style configure interface, you should instead +read the INSTALL file in the root directory of the Apache source +distribution. For compiling and installation on specific platforms, see</P> +<UL> +<LI><A HREF="windows.html">Using Apache with Microsoft Windows</A> +<LI><A HREF="netware.html">Using Apache with Novell Netware 5</A> +<LI><A HREF="mpeix.html">Using Apache with HP MPE/iX</A> +<LI><A HREF="unixware.html">Compiling Apache under UnixWare</A> +<LI><A HREF="readme-tpf.html">Overview of the Apache TPF Port</A> +</UL> + +<H2>Downloading Apache</H2> + +Information on the latest version of Apache can be found on the Apache +web server at <A +HREF="http://www.apache.org/">http://www.apache.org/</A>. This will +list the current release, any more recent beta-test release, together +with details of mirror web and anonymous ftp sites. + +<P> + +If you downloaded a binary distribution, skip to <A +HREF="#install">Installing Apache</A>. Otherwise read the next section +for how to compile the server. + +<H2>Compiling Apache</H2> + +Compiling Apache consists of three steps: Firstly select which Apache +<STRONG>modules</STRONG> you want to include into the server. Secondly create a +configuration for your operating system. Thirdly compile the +executable. +<P> + +All configuration of Apache is performed in the <CODE>src</CODE> +directory of the Apache distribution. Change into this directory. + +<OL> + <LI> + Select modules to compile into Apache in the + <CODE>Configuration</CODE> file. Uncomment lines corresponding to + those optional modules you wish to include (among the AddModule lines + at the bottom of the file), or add new lines corresponding to + additional modules you have downloaded or written. (See <A + HREF="misc/API.html">API.html</A> for preliminary docs on how to + write Apache modules). Advanced users can comment out some of the + default modules if they are sure they will not need them (be careful + though, since many of the default modules are vital for the correct + operation and security of the server). + <P> + + You should also read the instructions in the <CODE>Configuration</CODE> + file to see if you need to set any of the <CODE>Rule</CODE> lines. + + + <LI> + Configure Apache for your operating system. Normally you can just + run the <CODE>Configure</CODE> script as given below. However + if this fails or you have any special requirements (<EM>e.g.</EM>, to include + an additional library required by an optional module) you might need + to edit one or more of the following options in the + <CODE>Configuration</CODE> file: + <CODE>EXTRA_CFLAGS, LIBS, LDFLAGS, INCLUDES</CODE>. + <P> + + Run the <CODE>Configure</CODE> script: + <BLOCKQUOTE> + <PRE> + % Configure + Using 'Configuration' as config file + + configured for <whatever> platform + + setting C compiler to <whatever> * + + setting C compiler optimization-level to <whatever> * + + Adding selected modules + + doing sanity check on compiler and options + Creating Makefile in support + Creating Makefile in main + Creating Makefile in os/unix + Creating Makefile in modules/standard + </PRE> + </BLOCKQUOTE> + + (*: Depending on Configuration and your system, Configure + might not print these lines. That's OK).<P> + + This generates a Makefile for use in stage 3. It also creates a + Makefile in the support directory, for compilation of the optional + support programs. + <P> + + (If you want to maintain multiple configurations, you can give an + option to <CODE>Configure</CODE> to tell it to read an alternative + Configuration file, such as <CODE>Configure -file + Configuration.ai</CODE>). + <P> + + <LI> + Type <CODE>make</CODE>. +</OL> + +The modules we place in the Apache distribution are the ones we have +tested and are used regularly by various members of the Apache +development group. Additional modules contributed by members or third +parties with specific needs or functions are available at +<<A HREF="http://www.apache.org/dist/contrib/modules/" + >http://www.apache.org/dist/contrib/modules/</A>>. +There are instructions on that page for linking these modules into the +core Apache code. + +<H2><A NAME="install">Installing Apache</A></H2> + +You will have a binary file called <CODE>httpd</CODE> in the +<CODE>src</CODE> directory. A binary distribution of Apache will +supply this file. <P> + +The next step is to install the program and configure it. Apache is +designed to be configured and run from the same set of directories +where it is compiled. If you want to run it from somewhere else, make +a directory and copy the <CODE>conf</CODE>, <CODE>logs</CODE> and +<CODE>icons</CODE> directories into it. In either case you should +read the <A HREF="misc/security_tips.html#serverroot">security tips</A> +describing how to set the permissions on the server root directory.<P> + +The next step is to edit the configuration files for the server. This +consists of setting up various <STRONG>directives</STRONG> in up to three +central configuration files. By default, these files are located in +the <CODE>conf</CODE> directory and are called <CODE>srm.conf</CODE>, +<CODE>access.conf</CODE> and <CODE>httpd.conf</CODE>. To help you get +started there are same files in the <CODE>conf</CODE> directory of the +distribution, called <CODE>srm.conf-dist</CODE>, +<CODE>access.conf-dist</CODE> and <CODE>httpd.conf-dist</CODE>. Copy +or rename these files to the names without the <CODE>-dist</CODE>. +Then edit each of the files. Read the comments in each file carefully. +Failure to setup these files correctly could lead to your server not +working or being insecure. You should also have an additional file in +the <CODE>conf</CODE> directory called <CODE>mime.types</CODE>. This +file usually does not need editing. + +<P> + +First edit <CODE>httpd.conf</CODE>. This sets up general attributes +about the server: the port number, the user it runs as, <EM>etc.</EM> Next +edit the <CODE>srm.conf</CODE> file; this sets up the root of the +document tree, special functions like server-parsed HTML or internal +imagemap parsing, <EM>etc.</EM> Finally, edit the <CODE>access.conf</CODE> +file to at least set the base cases of access. + +<P> + +In addition to these three files, the server behavior can be configured +on a directory-by-directory basis by using <CODE>.htaccess</CODE> +files in directories accessed by the server. + +<H3>Set your system time properly!</H3> + +Proper operation of a public web server requires accurate time +keeping, since elements of the HTTP protocol are expressed as the time +of day. So, it's time to investigate setting up NTP or some other +time synchronization system on your Unix box, or whatever the +equivalent on NT would be. + +<H2>Compiling Support Programs</H2> + +In addition to the main <CODE>httpd</CODE> server which is compiled +and configured as above, Apache includes a number of support programs. +These are not compiled by default. The support programs are in the +<CODE>support</CODE> directory of the distribution. To compile +the support programs, change into this directory and type +<PRE> + make +</PRE> + +<!--#include virtual="footer.html" --> +</BODY> +</HTML> |