GeneWeb - Server

| # GeneWeb - Server

Wenn "gwd" gestartet ist, arbeitet es als Server. Normalerweise wird die Adresse "http://computer:2317/base" für den Zugriff durch externe Leute genutzt.

Allerdings gilt das nur für Rechner, die von außen sichtbar sind, d. h. nur für die, die direkt ans Internet angeschlossen sind.

Wenn du über einen Provider gehst, ist dein Computer nicht sichtbar. In diesem Fall gibt es keine Lösung. Es liegt in der Verantwortung des Providers, GeneWeb zu installieren. Zum Zeitpunkt wo ich diese Zeilen schreibe (Oktober '98) hat es, denke ich, kein Provider installiert.

Daher betrifft das folgende nur diejenigen, die eine direkte Verbindung zum Internet besitzen.

Unter Unix oder Windows NT (also nicht Windows 95) erlangt man Zugang zum Computer als Nutzer, indem man den Loginnamen und das Kennwort benutzt. Möglicherweise möchtest du dich wieder abmelden, ohne daß GeneWeb angehalten wird.

Dann hast du zwei Lösungen für dieses Problem: Installation als "Dienst" und Installation als "cgi"-Programm.

### Installation als "Service"

In diesem Betriebsmodus muß kein Webserver auf deinem Computer installiert sein. Gwd ist selbst ein Webserver. Der einzige Unterschied zu anderen Servern besteht darin, daß er nur der Genealogie dient.

- Unter Unix gib - anstelle nur "gwd" zu schreiben - ein:

         nohup gwd 2>&1 &             (unter "sh", "ksh", "bash")
         nohup gwd >& nohup.out &     (unter "csh", "tcsh")

Dann kannst du dich abmelden. Gwd wird weiterlaufen und seinen Mitschnitt in die Datei "nohup.out" schreiben, die du später auswerten kannst. Zum Anhalten schau dir die Prozeßnummer von "gwd" mit dem Befehl "ps" an und stoppe es mit dem Befehl "kill".

- Unter Windows NT mußt du "gwd" mit dem Hilfsprogramm "srvany.exe" als Dienst installieren, wenn Du als Administrator angemeldet bist. Dazu benötigst Du aus dem Windows-NT-Ressource-Kit: srvany.exe, instsrv.exe, eventuell auch srvinstw.exe und delsrv.exe. Zuerst kopierst Du "srvany.exe" in ein Verzeichnis auf deinem Computer (z. B. c:\GeneWeb) und installierst es mit folgendem Befehl als Service (schön grafisch geht das auch mit "srvinstw.exe"):

         instsrv GeneWebServer c:\GeneWeb\srvany.exe

Unter Systemsteuerung -> Dienste suche nach "GeneWebServer", klicke "Startart" und wähle "Automatisch" oder "Manuell" nach Bedarf. In der "Anmelden als"-Box wähle einen Anmeldenamen, unter dem der Dienst laufen soll, und trage das richtige Passwort dafür ein (nur so funktioniert auch der Zugriff per Netzwerk). GeneWeb wird als zu startender Dienst eingetragen, indem mit regedt32 in die Registry eingetragen wird:

    1. unter HKLM\System\CurrentControlSet\Services\GeneWebServer
       ein neuer Schlüssel "Parameters"

    2. darunter zwei neue Werte (Typ REG_SZ) Application und AppDirectory, z. B.
       Application: REG_SZ: C:\GeneWeb\gw\gwd.exe
       AppDirectory: REG_SZ: C:\GeneWeb\gw

Nun kann GeneWeb unter Systemsteuerung->Dienste->GeneWebServer "Starten"/"Beenden" oder in der Eingabeaufforderung durch Eingabe von "net start GeneWebServer" bzw. "net stop GeneWebServer" gesteuert werden. Willst Du den Dienst GeneWebServer wieder entfernen, so erfolgt das (nach dem Stoppen) durch "delsrv GeneWebServer" oder "instsrv GeneWebServer remove".

### Installation als "cgi"-Programm

In diesem Betriebsmodus muß ein Webserver auf deinem Computer laufen. "Cgi"s sind Programme, die der Webserver starten kann. Nur der Systemadministrator ist autorisiert, "cgi"s hinzuzufügen. Du mußt sie/ihn zuvor fragen.

- Unter Unix, wenn du GeneWeb z. B. im Verzeichnis "/home/meier/geneweb" installiert hast, erzeuge eine Datei mit dem Namen "geneweb" mit folgendem Inhalt:

         #!/bin/sh
         DIR=/home/meier/geneweb/gw
         cd $DIR
         $DIR/gwd -cgi

Mache diese Datei ausführbar (chmod +x geneweb) und frage deinen Systemadministrator, ob er die Datei im "cgi"-Verzeichnis installiert. Frage sie/ihn, welche Adresse zu benutzen ist. Das wird vermutlich soetwas sein wie:

         http://bla.xx.edu/cgi-bin/geneweb

Wenn du die o. g. URL-Adresse in deinem Webbrowser eingibst, wirst du eine Seite sehen, die lediglich nach "Base:" fragt. Gib den Namen deiner Datenbank ein. Du kannst auch "?b=mueller" zu dieser URL hinzufügen, wenn "mueller" dein Datenbankname ist.

Anmerkungen:

- Wenn letzteres Kommando nicht funktioniert, kann es sein, daß der Webserver keine Zugriffsrechte zu der Datenbank und den anderen Verzeichnissen hat. Führe die folgenden Kommandos aus:

         cd /home/meier/geneweb/gw
         chmod 777 . lang images meier.gwb

- Wenn er antwortet, aber sehr langsam ist, kann es sein, daß das durch den Zugriff auf die Datenbank über NFS kommt (wenn du nicht weißt was das heißt, frage deinen Systemadministrator). Es wäre besser, wenn das nicht so bleibt: Wenn möglich, kopiere das Verzeichnis geneweb auf eine lokale Festplatte auf dem Webserver. Wenn das nicht möglich ist, füge die Option "-nolock" zum Aufruf des Befehls "gwd" in der o.g. Datei "geneweb" hinzu:

         $DIR/gwd -cgi -nolock

- Unter Windows NT, wenn du GeneWeb z. B. im Verzeichnis "c:\home\meier\geneweb" installiert hast, erzeuge eine Datei namens "gwd.arg" mit folgendem Inhalt:

         -hd
         c:\home\meier\geneweb\gw
         -bd
         c:\home\meier\geneweb\gw
         -cgi

Das sind die Optionen, die zum Befehl "gwd" hinzugefügt werden können. Führe "gwd -help" aus, um alle möglichen Optionen zu sehen.

Bitte dann deinen Systemadministrator:

- die Datei "gwd.arg" in das "cgi"-Verzeichnis zu installieren.
- die Datei "gwd.exe" aus dem "geneweb"-Verzeichnis in dieses "cgi"-Verzeichnis zu kopieren.

Frage sie/ihn, welche Adresse zu benutzen ist. Das wird vermutlich soetwas sein wie:

         http://bla.xx.edu/cgi-bin/gwd.exe

Wenn du die o. g. URL-Adresse in deinem Webbrowser öffnest, wirst du eine Seite sehen, die lediglich nach "Base:" fragt. Gib den Namen deiner Datenbank ein. Du kannst außerdem "?b=mueller" zu dieser URL hinzufügen, wenn "mueller" dein Datenbankname ist.

Anmerkung: Wenn dieses letzte Kommando nicht funktioniert, kann es sein, daß der Webserver keine Zugriffsrechte auf die Datenbank und die anderen Verzeichnisse hat. Du mußt Lese- und Schreibzugriffsrechte für das Verzeichnis "geneweb", dessen Unterverzeichnis "gw" und die Unterverzeichnisse "lang", "mueller.gwb", "images" (und "cnt", wenn es existiert) vergeben.

### Installation als "Dienst" oder als "cgi"-Programm?

Wenn du die Wahl hast zwischen Installation als "Dienst" oder als "cgi"-Programm, beachte bitte die folgenden Punkte:

- Im "cgi"-Modus sind die Anfragen indirekt, weil sie durch den Webserver gehen, was die Abarbeitung verlangsamen kann.
- Unter Unix ist die Installation als "Dienst" einfacher, weil es weder die Erlaubnis noch den Eingriff des Systemadministrators benötigt.
- Unter Windows NT mußt du immer den Systemadministrator fragen, der vermutlich den "cgi"-Modus bevorzugen wird, weil er einfacher zu installieren und zu kontrollieren ist.
- Wenn natürlich kein Webserver auf deinem Computer läuft, ist nur die Installation als "Dienst" möglich.

Zurück zur Gebrauchsanweisung.

Copyright (c) 1998-2005 INRIA - GeneWeb