summaryrefslogtreecommitdiff
path: root/APACHE_1_3_42/src/INSTALL
diff options
context:
space:
mode:
Diffstat (limited to 'APACHE_1_3_42/src/INSTALL')
-rw-r--r--APACHE_1_3_42/src/INSTALL169
1 files changed, 169 insertions, 0 deletions
diff --git a/APACHE_1_3_42/src/INSTALL b/APACHE_1_3_42/src/INSTALL
new file mode 100644
index 0000000000..73c91ccdb2
--- /dev/null
+++ b/APACHE_1_3_42/src/INSTALL
@@ -0,0 +1,169 @@
+
+ A P A C H E I N S T A L L A T I O N
+
+ NOTE: Windows users please read the documents ../README-WIN.TXT and
+ http://httpd.apache.org/docs/windows.html, (or the
+ htdocs/manual/windows.html file included with Apache).
+ The following applies only to Unix users.
+
+ Installing the Apache 1.3 HTTP server with APACI
+ ================================================
+
+ For the out-of-the-box build and installation through the new Apache
+ Autoconf-style Interface (APACI) see the file INSTALL in the parent
+ directory. This document describes only the manual way of installing Apache.
+
+ Installing the Apache 1.3 HTTP server manually
+ ==============================================
+
+ Unless you grabbed a binary distribution of Apache, you must compile it for
+ your specific platform. In order to compile it, you must set compile-time
+ options (in particular, system type) for your system by editing a
+ Configuration file, run a script which generates a Makefile and a small
+ piece of C code, and then compile it.
+
+ Compilation
+ -----------
+
+ Building the Apache Web server absolutely REQUIRES an ANSI C-compliant
+ compiler. If your compiler does not meet this requirement, don't even
+ bother trying to build the server; it won't work. The server may or may not
+ build correctly with a C++ compiler. Making it compilable with C++ is not a
+ goal at this point, so if it doesn't work please use a normal ANSI C
+ compiler instead.
+
+ This release of Apache supports the notion of "optional modules". However,
+ the server has to know which modules are compiled into it, in order for
+ those modules to be effective; this requires generation of a short bit of
+ code ("modules.c") which simply has a list of them.
+
+ It is also necessary to choose the correct options for your platform.
+
+ To do this:
+
+ 1) Copy the file "Configuration.tmpl" to "Configuration" and then edit
+ "Configuration". This contains the list and settings of various "Rules"
+ and an additional section at the bottom which lists the modules which
+ have been compiled in, and also names the files containing them. You
+ will need to:
+
+ a) Adjust the Rules and EXTRA_CFLAGS|LIBS|LDFLAGS|INCLUDES if
+ you feel so inclined.
+
+ b) Uncomment lines corresponding to those optional modules you wish to
+ include (among the Module lines at the bottom of the file), or add new
+ lines corresponding to custom modules you have written. (See API.html
+ for preliminary docs on how to do that).
+
+ Note that DBM auth has to be explicitly configured in, if you want it ---
+ just uncomment the corresponding line.
+
+ 2) Run the "Configure" script:
+
+ $ ./Configure
+ Using config file: Configuration
+ Creating Makefile
+ + configured for <whatever> platform
+ + setting C compiler 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
+ $ _
+
+ This generates new versions of the Makefiles and of modules.c. (If you
+ want to maintain multiple configurations, you can say, e.g.,
+
+ $ ./Configure -file Configuration.ai
+ Using config file: Configuration.ai
+ Creating Makefile
+ + configured for <whatever> platform
+ + setting C compiler 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
+ $ _
+
+ 3) Now compile the program:
+
+ $ make
+
+ 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
+ http://www.apache.org/dist/contrib/modules/. There are instructions
+ on that page for linking these modules into the core Apache code.
+
+ If during compilation you get a warning about a missing 'regex.h', set
+ WANTHSREGEX=yes in the 'Configuration', and let The Apache Group know you
+ needed to do this for your OS by filling out a problem report form at
+ http://bugs.apache.org/, or by sending a mail message to
+ apache-bugs@apache.org. Include the output of the command "uname -a".
+
+ Installation
+ ------------
+
+ After compilation, you will have a binary called "httpd" in this src/
+ directory. If you received a binary distribution of apache, you should have
+ this file already.
+
+ The next step is to edit the configuration files for the server. In the
+ top-level subdirectory called "conf" you should find distribution versions
+ of the three configuration files: srm.conf-dist, access.conf-dist, and
+ httpd.conf-dist. Copy them to srm.conf, access.conf, httpd.conf
+ respectively.
+
+ First edit httpd.conf. This sets up general attributes about the server -
+ the port number, the user it runs as, etc. Next edit the srm.conf file -
+ this sets up the root of the document tree, special functions like
+ server-parsed HTML or internal imagemap parsing, etc. Finally, edit the
+ access.conf file to at least set the base cases of access. Documentation for
+ all of these is located at http://www.apache.org/docs/.
+
+ Finally, make a call to httpd, with a -f to the full path to the httpd.conf
+ file. I.e., the common case:
+
+ $ /usr/local/apache/httpd -f /usr/local/apache/conf/httpd.conf
+
+ And voila! The server should be running.
+
+ By default the srm.conf and access.conf files are located by name - to
+ specifically call them by other names, use the AccessConfig and
+ ResourceConfig directives in httpd.conf.
+
+ Set your system time properly!
+
+ 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.
+
+ Upgrading an Existing Apache Environment
+ ----------------------------------------
+
+ Between releases of Apache, there are several files that are likely to get
+ changed (aside from the source, of course). These include:
+
+ src/Makefile.tmpl
+ src/Configuration.tmpl
+ src/Configure
+ conf/*.conf-dist
+ conf/mime.types
+
+ It's recommended that you unpack a new Apache version distribution into a
+ different directory than the existing one, and check these files against the
+ ones you already have for new or changed directives. It's almost certain
+ that the Configure, Configuration.tmpl, and Makefile.tmpl files are going to
+ change, so pay particular attention to merging your existing Configuration
+ settings with the ones in the Configuration.tmpl file to make a new
+ Configuration file in the new Apache src directory. Then follow the steps
+ for a new installation to build and test the new server before replacing the
+ existing Apache directory tree with the one from the new distribution.
+