Commit 3a5a95df authored by No Author's avatar No Author
Browse files

This commit was manufactured by cvs2svn to create branch 'apache_1_0_1'.

git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/branches/1.3@76319 13f79535-47bb-0310-9956-ffa450edef68
parent 8312b9cb
Loading
Loading
Loading
Loading

apache_1_0_1/CHANGES

0 → 100644
+92 −0
Original line number Diff line number Diff line
New features with this release, as extensions of the Apache functionality
(see also more detailed CHANGES file) in the source directory.

*) API for server extensions --- see src/API.html for an overview.  Most
   server functionality (including includes, CGI, and most forms of access
   control) are actually implemented as API-conformant modules.

   The API is not yet quite stable (see src/TODO for some possible
   changes), but anything done now will be easily adapted for future
   versions --- after all, we have more modules to adapt than you do.

*) <VirtualHost> is more general --- just about any srm.conf or
   httpd.conf command can go in a <Virtualhost> section, with the
   following specific exceptions: ServerType, UserId, GroupId,
   StartServers, MaxRequestsPerChild, BindAddress, PidFile,
   TypesConfig, ServerRoot.  

*) Support for content negotiation of languages through MultiViews
   (*.fr, *.de, *.en suffixes), via the new AddLanguage and LanguagePriority
   commands (code written by Francois Guillaume).

*) Significant internal cleanups and rearrangements.  The two externally
   visible consequences of this are that just about all of the unchecked
   fixed limits are gone, and that the server is somewhat pickier about
   config file syntax (noting and complaining about extraneous command
   arguments or other stuff at the end of command lines).

*) XBITHACK is a run-time option, and can be selectively enabled per
   directory --- the -DXBITHACK compile-time option just changes the
   default.  The command which configures it is "XBitHack", which is
   allowed everywhere "Options" is; this takes an argument ---
   "XBitHack Off" turns it off; "XBitHack On" gets you the NCSA
   -DXBITHACK behavior; and "XBitHack Full" gets you the Apache GXBIT
   stuff on top of that.  (-DXBITHACK makes "Full" the default;
   otherwise, it defaults "Off").

*) TransferLog can specify a program which gets the log entries piped to it,
   a la 'TransferLog "| /var/www/my-perl-script -arg valu"' --- this should
   give the same SIGTERM/pause/SIGKILL treatment to the logging process on
   server restarts that a CGI script gets on an aborted request.  NB the
   server is counting on the logging process to work, and will probably hang
   or worse if it dies.

We also have a few experimental modules which indicate directions for
a future release (NB these experimental, meaning they haven't been
tested as much as the rest of the code here; also, they are not in
final form yet, and what appears as supported may not be quite what
you see now, though it will support at least the same functionality):

*) Configurable logging module --- this is a replacement for the
   standard plane-jane Common Log Format code, which supports a
   LogFormat directive which allows you to control the formatting of
   entries in the TransferLog, and add some new items if you like (in
   particular, Referer and User-Agent).

*) The optional dld module is a proof-of-concept piece of code which 
   loads other modules into the server as it is configuring itself (the
   first time only --- for now, rereading the config files cannot
   affect the state of loaded modules), using the GNU dynamic linking
   library, DLD.  It isn't compiled into the server by default, since
   not everyone has DLD, but it works when I try it.  (Famous last
   words). 

   This module defines two commands:

     LoadModule module_sym filename
     LoadFile filename filename filename...
     
   LoadModule tells the server to link in the file "filename", and add
   the module structure named "module_sym" to the list of active
   modules (this is the "foo_module" in "module foo_module = {..." at
   the bottom of all the mod_*.c files).

   LoadFile links with additional object files or libraries which may
   be required for some module to work.  Filenames are taken relative
   to ServerRoot unless they begin with '/'.  Note that for some
   reason, "LoadFile /lib/libc.a" seems to be required for just about
   everything.

   NB that DLD needs to read the symbol table out of the server binary
   when starting up; these commands will fail if the server can't find
   its own binary when it starts up, or if that binary is stripped.

   Sample usage:

     LoadModule ai_backcompat_module modules/mod_ai_backcompat.o
     LoadFile /lib/libc.a

   (assuming mod_ai_backcompat.o is in fact in the 'modules'
   subdirectory of ServerRoot).

apache_1_0_1/LICENSE

0 → 100644
+56 −0
Original line number Diff line number Diff line

/* ====================================================================
 * Copyright (c) 1995 The Apache Group.  All rights reserved.
 *
 * Redistribution and use in source and binary forms, with or without
 * modification, are permitted provided that the following conditions
 * are met:
 *
 * 1. Redistributions of source code must retain the above copyright
 *    notice, this list of conditions and the following disclaimer. 
 *
 * 2. Redistributions in binary form must reproduce the above copyright
 *    notice, this list of conditions and the following disclaimer in
 *    the documentation and/or other materials provided with the
 *    distribution.
 *
 * 3. All advertising materials mentioning features or use of this
 *    software must display the following acknowledgment:
 *    "This product includes software developed by the Apache Group
 *    for use in the Apache HTTP server project (http://www.apache.org/)."
 *
 * 4. The names "Apache Server" and "Apache Group" must not be used to
 *    endorse or promote products derived from this software without
 *    prior written permission.
 *
 * 5. Redistributions of any form whatsoever must retain the following
 *    acknowledgment:
 *    "This product includes software developed by the Apache Group
 *    for use in the Apache HTTP server project (http://www.apache.org/)."
 *
 * THIS SOFTWARE IS PROVIDED BY THE APACHE GROUP ``AS IS'' AND ANY
 * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
 * PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE APACHE GROUP OR
 * IT'S CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
 * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
 * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
 * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
 * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
 * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
 * OF THE POSSIBILITY OF SUCH DAMAGE.
 * ====================================================================
 *
 * This software consists of voluntary contributions made by many
 * individuals on behalf of the Apache Group and was originally based
 * on public domain software written at the National Center for
 * Supercomputing Applications, University of Illinois, Urbana-Champaign.
 * For more information on the Apache Group and the Apache HTTP server
 * project, please see <http://www.apache.org/>.
 *
 */



apache_1_0_1/README

0 → 100644
+67 −0
Original line number Diff line number Diff line
                                 Apache
                             Version 1.0 (and up)

What is it?
-----------

Apache is an HTTP server designed as a plug-in replacement for the NCSA
server version 1.3 (or 1.4). It fixes numerous bugs in the NCSA server and
includes many frequently requested new features, and has an API which
allows it to be extended to meet users' needs more easily.

Documentation
-------------

All the documentation is on-line on the WWW, via <URL:http://www.apache.org/>.

Installation
------------

This program is distributed in source form only.  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.

For instructions on compilation, see the file 'INSTALL' in the src/ directory.

After compilation, you will have a binary called "httpd" in the 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 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
<URL: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/etc/apache/src/httpd -f /usr/local/etc/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.

The Latest Version
------------------

Details of the latest version are in the apache project page (above).
The most recent distribution is also available by anonymous ftp
from ftp.ast.cam.ac.uk in the directory /pub/WWW/apache.

Licencing
---------

Please see the file called LICENSE.
+27 −0
Original line number Diff line number Diff line
#!/bin/sh

ARCHIE=/usr/local/bin/archie


echo Content-type: text/html
echo

if [ -x $ARCHIE ]; then
	if [ $# = 0 ]; then
		cat << EOM
<TITLE>Archie Gateway</TITLE>
<H1>Archie Gateway</H1>

<ISINDEX>

This is a gateway to archie. Type search query in your browser's search 
dialog.<P>
EOM
	else
		echo \<PRE\>
		$ARCHIE "$*"
	fi
else
	echo Cannot find archie on this system.
fi
+28 −0
Original line number Diff line number Diff line
#!/bin/sh

CAL=/bin/cal

echo Content-type: text/html
echo

if [ -x $CAL ]; then
	if [ $# = 0 ]; then
		cat << EOM
<TITLE>Calendar</TITLE>
<H1>Calendar</H1>

<ISINDEX>

To look up a calendar month, type the month followed by a space then the year.<P>
Example: <code>3 1993</code> would give the calendar for March 1993.

EOM
	else 
		echo \<PRE\>
		$CAL $*
	fi
else
	echo Cannot find cal on this system.
fi

Loading