www und allegro: Maske

Dierk Hoeppner HO at buch.biblio.etc.tu-bs.de
Di Aug 20 14:36:59 CEST 1996


Herr Glaser hatte Probleme mit acwww20. Genaues wiederholen der 
ausfuehrlichen Mail spare ich mir mal im Moment.

Der Knackpunkt bei dieser Schnittstelle ist der, dass fuer das korrekte 
Funktionieren eine bestimmte Verzeichnisstruktur wichtig ist. Zunaechst zur 
Installation: Man MUSS acwww20.zip mit der Option -d auspacken, weil das 
Archiv eine Verzeichnisstruktur enthaelt, und die ist sehr wichtig! Also im 
Wurzelverzeichnis(!):

pkunzip -d acwww20.zip

eingeben. 

Jetzt zur Taktik: Auf der Leitseite (acrecher.htm) sollen mehrere
Datenbanken angeboten werden, die auch unterschiedliche Konfigurationen
und Inhalte haben duerfen. Wir bieten z.B. neben unserem OPAC auch die
Formatedatenbank an, welche ja nun wahrlich keine Katalogdatenbank ist
und auch ueber eine ganz andere Konfiguration verfuegt). Jede Datenbank
bekommt einen symbolischen Kurznamen (z.B. opac fuer den Katalog) Diesen
Namen finden Sie als Verzeichnisnamen einmal unterhalb von .../cgi-dos
(cgi-bin unter UNIX) und unterhalb von .../htdocs. Fuer jede Datenbank
benoetigt man ein Verzeichnis.

Die Hauptscripte liegen in .../cgi-dos. Wenn eins der Scripte vom 
WWW-Server gestartet wird, liest es zunaechst cgi-lib.pl (Unterprogramme 
zum Auswerten der CGI-Optionen) ein und dann acinfo.pl (Grundeinstellungen 
fuer die Scripte und die Schnittstelle). In acinfo.pl ist in einem 
assoziativen Array festgelegt, welches Verzeichnis zu einem symbolischen 
Datenbanknamen gehoert. In diesem Verzeichnis liegen dann die fuer die 
gewaehlte Datenbank notwendigen Parameterdateien, Konfigurationsdatei und, 
besonders wichtig, dbinfo.pl. Diese Datei enthaelt dann 
Datenbankspezifische Einstellungen. Also zu jeder angebotenen Datenbank 
MUSS es eine dbinfo.pl in einem eigenen Verzeichnis geben.

Fuer das Herumspielen mit WinHTTPD 1.4 ist noch dies wichtig: In der Datei
\httpd\conf\httpd.cnf, die in acwww20 enthalten ist, gibt es am Schluss 
zwei Zeilen

ShellScriptTempl ...

Die sorgen dafuer, dass Perl als DOS-Shell gestartet wird und gleich das 
angegebene Script ausfuehrt. Das ist ein Trick, um unter Windows eine 
bestimmte UNIX-Funktionalitaet zu erreichen, denn unter UNIX sind Scripte 
direkt ausfuehrbar. Dieser Trick erleichtert die Portierung der Scripte und 
HTML-Seiten auf eine UNIX-Maschine. Die erste ShellScriptTempl-Anweisung 
startet das Script sofort, mit der zweiten wird das Script im Debugmodus 
von Perl gestartet. Man hat dann die Moeglichkeit, seine Scripte Schritt 
fuer Schritt zu testen. In beiden Faellen gibt es eine DOS-Box (als Icon, 
das man aber gross machen kann) mit Namen 'httpd Shell'.

Als Beispiel der Ablauf der Maskengenerierung:

Der Link heisst 'http://www .../cgi-bin/maske.pl?db=opac'. Wenn man ihn 
anklickt, wird das Script maske.pl mit den Programmoptionen db=opac 
gestartet. maske.pl laedt zunaechst cgi-lib.pl und acinfo.pl. Mit der Angabe 
'opac' findet es im Array %dbscripte das zur Datenbank 'opac' gehoerige 
Verzeichnis '/httpd/cgi-bin/opac' und laedt dann /httpd/cgi-
bin/opac/dbinfo.pl'. Beachten Sie: Hier wird immer, auch unter Windows, 
mit den UNIX-Dateinamenkonventionen gearbeitet. Und cgi-bin wird unter 
Windows auf cgi-dos umgebogen, so dass beide identisch sind. Jetzt stehen 
alle Informationen zur Verfuegung und die Maske wird aufgebaut.

Ich hoffe diese Anmerkungen helfen weiter.

Viele Gruesse

Dierk Hoeppner

PS: Die gesamte Schnittstelle laeuft bei uns sowohl auf der SUN als auch 
auf meinem Rechner unter WinHTTPD in identischen Versionen. Auf meinem 
Rechner entwickle und teste ich und uebertrage es dann einfach auf die SUN.
#####################################################################
    Dierk Hoeppner                      University Library
    Allegro-C Group                     Universitaetsbibliothek
                                        Pockelsstr. 13
                                        D-38106 Braunschweig
                                        Germany
                                        Tel: +49-531-391-5066
    Email: d.hoeppner at tu-bs.de          Fax: +49-0531-391-5836
#####################################################################




Mehr Informationen über die Mailingliste Allegro