Installation

After having downloaded ICE, edit the scripts and set the configuration variables like index path. An important thing is the mapping of virtual to physical paths in "ice-form.pl": it enables the indexer to handle the conversions defined by "aliases" in the http servers config files. Setting "%aliases" correctly is necessary for ICE to produce correct results. Here is an example to demonstrate how to set it.

Normally, a Web server has its documents residing under a specific directory. This is often referred to as a "document root". In order to define a document root, map "/" to the document root directory:


%aliases = (
'/',      '/usr3/webstuff/documents',
);

Furthermore, some servers have "Aliases" which define additional mappings between a URL path and a physical directory. These can also be defined in "%aliases":

%aliases = (
'/projects',   '/usr/stud/proj',
'/people',   '/usr3/webstuff/staff',
'/',      '/usr3/webstuff/documents',
);

You normally have to use different path seperators in the path definitions when you are on a Macintosh or PC system. In that case, a path may look like e.g. "usr:foo:bar" (Mac), or "\\usr\\foo\bar" (PC). Please note that this affects only the right side of the aliases mapping - the left side is still a URL, which has a slash ("/") as seperator no matter what plattform you use. Here is an example for a MacOS server:

%aliases = (
'/',      'usr3:webstuff:documents',
);

It is important that these are kept up to date whenever changes are being made - perhaps you'll want to add a comment in the servers config files like
  # if you make changes remember to edit "ice-form.pl" too!

as a reminder.

Now set up cron in such a way that ice-idx.pl is being called in regular intervalls in order to create a precomputed index. In case you are curious and want test ICE indexing now, call up ice-idx.pl for the first time "manually" to create the word index. Under UNIX, make the file executable and execute it from the command line. Under MacOS and Windows, you can double simply double click on its icon.

If you want to use a context specific thesaurus to support searches on your Web server, you must create a thesaurus file. ICE supports the thesaurus interchange format TIF, which defines relationships between terms. The following relationships can be used:

EQ
Equals to (is a synonym for)
AB
is abbreviation for
AF
is abbreviated as
Here is an example:
Image
EQ Picture

Picture
EQ Image

Rec
AB Recommendation

Recommendation
AF Rec


Implementation of the thesaurus is pretty straightforward, please let me know if you need a really large thesaurus (several hundred terms). The current code works fine for short, technical thesauri.

Using ICE

Call up the cgi interfaces by opening a URL
    http://your.servers.name/cgi-bin/ice-form.pl

(This only uses the servers search dialog field for entering search queries). Change cgi-bin if you have mapped some other path to point to your CGI executables. You'll probably want to add a link
  <HREF="/cgi-bin/ice-form.pl"> Search this server by keywords </A>

  <HREF="/cgi-bin/ice-form.pl?DAYS=7">changed during the last