AOLserver Release Notes

$Header: /usr/local/cvsroot/nsd/aolserver/doc/release.html,v 1.1.1.2 2000/09/10 16:07:48 mayoff Exp $

What's New

..blah..

And more -- check the ChangeLog for more details.

Bugs Fixed

..blah..

And more -- check the ChangeLog for more details.

Known Issues

Modules nsunix, nsvhr, and nssolid are untested.

The optional "fancy" ADP parser has problems parsing certain constructs.

The nsperm module has not been fully tested for thread-safety.

The database interface, while stable, is due for a redesign post-3.0.

Building and Installation

AOLserver 3 has an entirely new build process that requires gmake and a C compiler (preferrably gcc). On nearly all systems, you need only extract the source distribution from either a tar file or CVS. The file include/Makefile.global contains platform-specific information if you run into trouble. Type the following to make the server:
gmake

Once AOLserver builds, install it. If you had trouble, look at include/Makefile.global and the top-level Makefile
gmake install PREFIX=/usr/local/aolserver

To smoke-test your AOLserver build, change to the installation directory and type:
./bin/nsd -kt nsd.tcl

The sample configuration listens on port 8000 at your machine's primary internet address. Like all Unix servers, AOLserver must start up as "root" to use the privileged ports 80 and 443. In normal operation AOLserver changes itself into a normal Unix user. You specify the username to use with the "-u" option as illustrated below.

To install a production AOLserver, edit the nsd.tcl to suit your needs. The sample nsd.tcl is very complete and there is a copious reference in doc/config.txt. Then add this line to your /etc/inittab:
as:2345:respawn:/usr/local/aolserver/bin/nsd -it /usr/local/aolserver/nsd.tcl -u user -g group

If your *BSD Unix system does not have an /etc/inittab, you can use this line for your /etc/rc.local (or whatever) startup script:
while /bin/true
do /usr/local/aolserver/bin/nsd -it /usr/local/aolserver/nsd.tcl -u user -g group
done

Windows users may start AOLserver as an NT Service or from a Win32 console window just like in Unix. For development and testing, we recommend using console mode. For production, we very highly recommend running AOLserver from the NT Services control panel. To install AOLserver as an NT Service, type the following:
bin/nsd -I -f nsd.tcl

To remove AOLserver from the NT Services control panel, type this instead:
bin/nsd -R -f nsd.tcl

Directory Structure

The AOLserver directory structure is designed to help keep a complex system organized in a straightforward, modular fashion. There is a shared and a private Tcl library, as well as a shared and private module directories. Tcl code and global data not specific to a web server go into modules/tcl/tclmodulename/ and modules/modulename/ directories, respectively. Data files written by a server application should go into the servers/server1/modules/modulename/ directory.

What Goes Where

Server executables:     bin/
Server logs:            log/
Shared read-only data:  modules/modulename/ 
Tcl library:            modules/tcl/modulename/
Page root:              servers/server1/pages/
Private module data:    servers/server1/modules/modulename/

Other directories:
Access logs:            servers/server1/modules/nslog/
Access Control records: servers/server1/modules/nsperm/
SSL cert/key storage:   servers/server1/modules/nsssl

AOLserver Modules

AOLserver comes with several modules but only the most-used modules are included in the binary distribution. To build the modules, edit the top-level Makefile and edit the "MODULES" line before you run gmake. Alternatively, you can change into the module's directory and type "gmake". In nearly all directories you can type the following to build and install the module you need:
gmake PREFIX=/your/install/path

The standard modules are:

nssock
Services HTTP connections.
nscgi
Enables CGI scripting.
nscp
Provides remote-administration functions via a tclsh control port.
nslog
Common log format module for access logging
nsperm
Permissions module for site-wide access control.
nsext
External database driver for databases like Sybase and Oracle.

The optional modules are:

nsssl
This module lives in the nssock directory and is built with gmake SSL=1. It enables SSL connections to AOLserver. A binary build of nsssl with export-level security comes with the AOLserver binary distribution. To build this module, you need BSAFE from http://www.rsasecurity.com/.
nsunix
A communications driver that uses Unix domain sockets.
nsvhr
A virtual-hosting redirector that lets you use multiple independent web servers on one IP address communicating via a Unix domain socket or regular TCP/IP socket.
nspostgres
The Postgres database driver. Requires Postgres from http://www.postgresql.org/
nssybpd
The Sybase database driver. Requires the Sybase Client Libraries from http://www.sybase.com/.
nssolid
The SOLID database driver. Requires the SOLID database server which is available at http://www.solidtech.com/.

Documentation

AOLserver documentation is available in the doc/ directory of the source distribution as well as online at http://aolserver.com/doc/.

Incrementally, the documentation will be brought up-to-date with the latest version of AOLserver 3. Many documents have been added to the documentation from the AOLserver archives. We also appreciate corrections and additional documentation from you. Source code changes are now in the ChangeLog file in the top-level directory, either manually editted or automatically entered using the Emacs "C-x 4 a" key sequence.

Online Resources

AOLserver has an active development community at http://aolserver.com/ where you may register with the development system, subscribe to mailing lists, explore even more contributed software, and get help with AOLserver. Please visit http://aolserver.com/community/ and keep up with us!

Your Feedback

We welcome your feedback and bug reports in The AOLserver Community at http://aolserver.com/community/. We do not accept bug reports or feedback regarding AOLserver 2.x -- you must be using AOLserver 3.x or better.