GeneWeb - Serveur ou CGI

| # GeneWeb - Serveur ou CGI

Gwd, quand il est lancé, est un serveur. En principe, la troisième adresse: "http://ordinateur:2317/base" est celle à utiliser pour les gens de l'extérieur.

Cependant, cela ne s'applique qu'aux ordinateurs visibles de l'extérieur, c'est-à-dire ceux qui sont connectés directement sur Internet.

Si vous passez par un fournisseur d'accès, votre ordinateur personnel n'est pas visible. Dans ce cas, on ne peut rien faire. C'est au fournisseur d'accès d'installer GeneWeb sur son site. Au moment où j'écris ces lignes (oct 98), je ne crois pas qu'aucun fournisseur d'accès ne l'ait installé.

La suite ne concerne donc que ceux qui ont une connexion directe sur Internet.

Si vous êtes sous Unix ou Windows NT (donc pas Windows 95), vous avez dû entrer dans l'ordinateur en tant qu'utilisateur, en donnant votre nom de "login" et votre mot de passe. Vous voulez peut-être alors sortir sans que GeneWeb s'arrête.

Vous avez alors deux solutions pour résoudre ce problème: l'installation en "service" et en l'installation en "cgi".

### Installation en "service "

Dans ce mode de fonctionnement, vous n'avez pas besoin qu'un serveur Web soit installé sur votre ordinateur. Gwd est un serveur Web à lui tout seul. Sa seule différence avec les autres serveurs, c'est qu'il ne sert que de la généalogie.

- Si vous êtes sous Unix, au lieu de taper juste "Gwd", tapez:

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

  Vous pourrez alors vous déconnecter. Gwd continuera à tourner et enverra sa trace sur le fichier "nohup.out" que vous pourrez consulter plus tard. Pour l'arrêter, il faut regarder quel est son numéro de processus, avec la commande "ps" et le tuer avec la commande "kill".

- Si vous êtes sous Windows NT, vous pouvez installer "gwd" en "service" en utilisant l'utilitaire "srvany.exe", en étant connecté en tant qu'administrateur. À partir de Windows NT Ressource Kit, vous avez besoin de: srvany.exe, instsrv.exe, peut-être srvinstw.exe et delsrv.exe, too. D'abord, copiez srvany.exe dans un répertoire (dossier) de votre ordinateur (par exemple C:\GeneWeb) et installez-le en service (un utilitaire graphique sympa pour ça est srvinstw.exe):

            instsrv GeneWebServer c:\GeneWeb\srvany.exe

  Dans Services dans le panneau de configuration, cliquez GeneWebServer, puis sur Startup et choisissez Automatique ou Manuel. Dans la boite "se connecter comme", choisissez le compte sous lequel le service sera lancé et son mot de passe (c'est nécessaire pour avoir accès au réseau). GeneWeb sera lancé en présisant les clés "registry" avec regedt32:

      1. sous HKLM\System\CurrentControlSet\Services\GeneWebServer créez
         une nouvelle clé "Parameters"

      2. créez là deux nouvelles valeurs (type REG_SZ) Application et
         AppDirectory, par exemple:
         Application: REG_SZ: C:\GeneWeb\gw\gwd.exe
         AppDirectory: REG_SZ: C:\GeneWeb\gw

  Maintenant, vous pouvez contrôler le service GeneWeb dans le panneau de configuration -> Services -> GeneWebServer "Startup"/"Stop" ou en tapant "net start GeneWebServer" ou "net stop GeneWebServer" à l'invite de commandes. Pour enlever GeneWebServer, l'arrêter et taper "delsrv GeneWebServer" ou "instsrv GeneWebServer remove".

### Installation en "cgi"

Dans ce mode de fonctionnement, il faut qu'un serveur Web soit installé sur votre ordinateur. Les "cgi" sont des programmes que le serveur Web peut lancer. Seul l'administrateur système est autorisé à ajouter des "cgi". Il faut donc préalablement lui demander la permission.

- Sous Unix, si vous avez par exemple installé GeneWeb dans le répertoire "/home/dupont/geneweb", fabriquez un fichier que vous allez nommer "geneweb" et contenant les lignes suivantes:

           #!/bin/sh
           DIR=/home/dupont/geneweb/gw
           cd $DIR
           $DIR/gwd -cgi 2>/dev/null

  Rendez ce shell script exécutable (chmod +x geneweb) et demandez à votre administrateur système d'installer ce fichier dans le répertoire des "cgi". Demandez-lui également quelle est l'adresse Web à utiliser. Ce sera sûrement quelque chose du genre:

           http://gnagna.xx.fr/cgi-bin/geneweb

  Si vous ouvrez l'adresse URL ci-dessus dans votre navigateur, vous verrez apparaître une page qui vous demandera juste "Base:". Entrez le nom de votre base. Vous pouvez aussi ajouter directement "?b=durand" à cet URL, si "durand" est le nom de votre base.

  Remarques:

  - Si cette dernière commande ne fonctionne pas, il est possible que le serveur Web n'ait pas le droit d'accès à la base ni aux autres répertoires. Effectuez les opérations suivantes:

             cd /home/dupont/geneweb/gw
             chmod 777 . lang images base.gwb

  - Si cela répond mais est très lent, il se peut que ce soit dû au fait que le répertoire de la base est monté par NFS (Network File System). Il est préférable que ce ne soit pas le cas: si c'est possible, copiez donc le répertoire geneweb sur un disque local du serveur Web. Si cela ne vous est pas possible, ajoutez l'option "-nolock" dans l'appel de la commande Gwd du fichier "geneweb" ci-dessus:

             $DIR/gwd -cgi -nolock

- Sous Windows NT, si vous avez par exemple installé GeneWeb dans le répertoire "c:\home\dupont\geneweb", créez un fichier que vous allez nommer "gwd.arg" et contenant les lignes suivantes:

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

  Ce sont les options que l'on peut passer à la commande "Gwd". Faire "gwd -help" pour voir l'ensemble de ces options.

  Demandez ensuite à votre administrateur système:

  - D'installer le fichier "gwd.arg" dans le répertoire des "cgi".
  - De copier le fichier "gwd.exe" du répertoire "geneweb" dans ce même répertoire des "cgi".

  Demandez-lui l'adresse à utiliser. Ce sera sûrement quelque chose du genre:

           http://gnagna.xx.fr/cgi-bin/gwd.exe

  Si vous ouvrez cette adresse URL dans votre navigateur, vous verrez apparaître une page qui vous demandera juste "Base:". Entrez le nom de votre base. Vous pouvez aussi ajouter directement "?b=durand" à cet URL, si "durand" est le nom de votre base.

  Remarque: si cette dernière commande ne fonctionne pas, il est possible que le serveur Web n'ait pas le droit d'accès à la base ni aux autres répertoires. Il faut donner les droits de lecture et d'écriture au répertoire "geneweb", à son sous-répertoire "gw" et aux sous-répertoires "lang", "durand.gwb", "images" (et "cnt" si ce répertoire existe).

### Installation en "service" ou en "cgi"?

Si vous avez le choix entre installation en "service" ou en "cgi", notez les points suivants:

- En mode "cgi", les requêtes sont indirectes, puisqu'il faut passer par le serveur Web, ce qui peut ralentir légèrement le traitement.
- Sous Unix, l'installation en "service" est plus facile, puisqu'elle ne nécessite pas la permission ni l'intervention de l'administrateur système.
- Sous Windows NT, vous devrez de toutes façons passer par votre administrateur système, lequel va sûrement préférer le mode "cgi" qui est beaucoup plus simple à installer et plus contrôlable.
- Évidemment, s'il n'y a pas de serveur Web sur votre ordinateur, seule l'installation en "service" est possible.

Retour vers Mode d'Emploi

Copyright (c) 1998-2006 INRIA - GeneWeb