WWW at NIKHEF
Introduction
The www browser has been installed at NIKHEF in November 1991.
The main purpose was to provide easy access to the databases on CERNVM
(phonebook, news, XFIND).
The popularity of www increased when the SPIRES preprint index became
accessible via www.
In February 1992 the WWW server (httpd) has been installed on a SUN.
Experience has shown that it is very easy to make
existing information available to the world wide web.
Installation of the browser
The installation of the browser is straightforward:
-
Fetch the sources from info.cern.ch with anonymous ftp.
-
Uncompress and untar the file.
-
Compile and link the program by typing make in the appropriate directory.
-
Set the environment variable WWW_HOME with the pathname of
the home page or code the pathname in the main program.
Installation of the daemon
-
Fetch, uncompress and untar the sourcefile.
-
Create a directory for sun, copy the Makefile for the NeXT and change cc
to acc.
-
Create the following entry in /etc/inetd.conf
http stream tcp nowait root /httpd httpd -l -r
-
Create the following entry in /etc/services:
http 80/tcp # WorldWideWeb server
-
Put the directoriesnames to be accessed by the daemon in httpd.conf:
# Configuration file for WWW daemon
#
map /hypertext/* //cernvax/userd/tbl/hypertext/*
map /decnet/* //cernvax/userd/tbl/denise/*
map /rpc/* //cernvax/userd/tbl/rpc/*
map //* /Net/*
pass /Net/cernvax/userd/tbl/hypertext/*
pass /Net/cernvax/userd/tbl/denise/*
pass /Net/cernvax/userd/tbl/rpc/*
pass /user/a03/www/default/*
fail *
Keyword search
The code provided by CERN will not perform a keyword search.
A modification in HTRetrieve.c makes this possible:
if (keywords) {
/*
if (TRACE) fprint("HTHandle: can't perform search %s\n",
arg);
HTWriteASCII(soc,
"Sorry, this server does not perform searches.\n");
*/
ip = string;
command = "/user/a03/bin/WWW.sh ";
for (;*command!='\0';) *ip++ = *command++;
for (;*arg!='\0';) *ip++ = *arg++;
*ip++ = '?';
for (;*keywords!='\0';) *ip++ = *keywords++;
system (string);
return fd;
}
Example 1: Phone Directory
Let us take the telephone directory as an example.
The document Phone.html starts with the tag
<isindex>:
NIKHEF-H Telephone Directory
Gives telephone number, office number, email address and date of
last access on central NIKHEF server.
Four digit numbers can be dialed directly: +31 20 592 xxxx
Five digit numbers (81xxx) are beep numbers: dial +31 20 5920 xxx
Provide name as keyword.
When looking for willem
HTRetrieve calls the script WWW.sh
name=`echo $@ | awk -F? '{print $1}'`
keys=`echo $@ | awk -F? '{print $2}'`
name=`basename $name .html`
/user/a03/bin/$name.sh $keys
with the parameter Phone.html?willem.
This results in a call to the script Phone.sh:
name=$1
echo " $name at NIKHEF"
echo " $name
"
grep -i $name /user/a03/www/default/phone.html
with parameter willem.
A grep -i willem is done on a file which contains accounting
information of the central server of NIKHEF-H.
For willem this works fine, for jan --- a common name in the Netherlands ---
this too simple approach will also give the information about users whose
last login was in January.
Example 2: Preprint Index
The file Preprint.html contains the NIKHEF-H
preprints.
Preprints NIKHEF-H
Preprints NIKHEF-H
NIKHEF-H 92-05
Kalau, W.
On Gupta-Bleuler quantization of
systems with second-class constraints
February 1992, 16p
--------------
NIKHEF-H 92-04
Holten, J.W. van
BRST field theory of
relativistic particles
February 1992, 16p
--------------
An index of this file is made with the command
/usr/lib/refer/mkey Preprint.html | /usr/lib/refer/inv Index
When the name kalau is given as a keyword to this script:
name=$1
echo " $name in NIKHEF-H preprints "
echo " $name
"
#
echo $name | /usr/lib/refer/hunt /user/a03/www/default/Index
we get the following result:
kalau in NIKHEF-H preprints
kalau
Preprints NIKHEF-H
Preprints NIKHEF-H
NIKHEF-H 92-05
Kalau, W.
On Gupta-Bleuler quantization of systems with second-class constraints
February 1992, 16p
--------------
NIKHEF-H 91-04
Kalau, W., Holten, J.W. van
BRST cohomolgoy and BRST gauge fixing
--------------
NIKHEF-H 91-03
Kalau, W.
Ashtekar formalism with real variables
--------------