diff options
Diffstat (limited to 'APACHE_1_3_42/src/INSTALL')
-rw-r--r-- | APACHE_1_3_42/src/INSTALL | 169 |
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. + |