Web Oriented Object Framework

User Guide (Version 0.5b4)

Woof!
User Guide (Version 0.5b4)

Installation

The steps required to install Woof! depend on multiple factors such as the specific web server, its configuration and the hosting environment. The common steps required to install Woof! are described below. Subsequent sections describe installing and configuring Woof! in several different server-specific scenarios.

NOTE As Woof! is still under development with a changing API, it does not support installation on top of existing existing Woof! versions. Please remove older versions first.

Prerequisites

Woof! depends on Tcl 8.6.3 and the packages listed below. Note this does not apply to the bowwow executable which is self-contained.

The above packages are all part of the tcllib distribution.

Downloading Woof!

Woof! can be downloaded from SourceForge. It is is distributed in tar/gzip (.tar.gz) format for Unix/Linux, and in zipped (.zip) format for Windows. The content of both archives are identical except for end of line conventions. After downloading, unpack the archive in a suitable directory. This directory may be the same as the final location you want the Woof! code to reside, or a temporary location. The installation step will take care of both cases. Woof! itself only uses relative paths so it can always be moved later. However, you will need to change the web server configuration files accordingly.

There is one very important aspect to keep in mind - the final location for Woof! should lie outside the web server's document tree. Not following this recommendation requires careful configuration of the web server to not expose your application source code over the web.

Installing the distribution

After unpacking the distribution, running the installer script installs the Woof! components for the specified web server and interface. For example, the following command, executed from the woof distribution directory, will install and configure Woof! components for Apache using the SCGI interface.

woof-dist> tclsh scripts/installer.tcl install apache scgi

In the above example, the script assumes that Woof! is to be installed in-place - i.e. woof-dist is the final location for Woof! components. The following command, on the other hand, will install Woof! in a different location.

woof-dist> tclsh scripts/installer.tcl install apache scgi -installdir ~/web-dev/woof

Note that the installer.tcl script only configures Woof! itself. The web server configuration has to be modified separately. Examples are given in the server specific configuration sections that follow. The installer - installation utility chapter details specifics of the install command.