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.
- uri
- fileutil
- md5
- uuid
- html
- ncgi
- cmdline
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.