Compréhension des composants du dossier Server

Cette section décrit les composants distribués dans le dossier Server du Kit ISS. Si vous n'exécutez pas Microsoft IIS, ou si vous préférez une structure de dossiers différente, consultez les remarques suivantes :

Activation du serveur DHCP

Le client est configuré pour DHCP. Vous devez configurer ISS pour fournir une adresse IP DHCP au client lorsque celui-ci se connecte au serveur. Dans la mesure où le processus d'inscription prend peu de temps, la durée de validité de l'adresse IP peut être courte, de l'ordre de quelques minutes seulement.

Dans la mesure où le traitement de l'inscription doit être utilisé lors d'une connexion point-à-point, il n'est pas nécessaire que les adresses IP allouées pour le serveur DHCP soient des adresses IP formellement attribuées. Il vous incombe de déterminer si les adresses IP DHCP seront des adresses Internet valides ou des adresses arbitraires.

Enregistrement du type MIME de fichier .ins

Pour que le client puisse traiter le fichier .ins automatiquement, vous devez enregistrer un type MIME pour les fichiers .ins auprès d'ISS. Ce type MIME est intitulé « application/x-Internet-signup ». Lorsque le client demande un fichier .ins, ISS répond avec ce type MIME, ce qui exécute l'application d'installation associée du côté client.

Ajout du type MIME de fichier .ins

Vous devez modifier manuellement les types MIME du registre. Pour ajouter le type MIME de fichier .ins, utilisez Regedt32.exe pour ajouter les informations suivantes :

Sous cette clé:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\InetInfo\Parameters\MimeMap

Ajoutez cette valeur
application/x-internet-signup,ins,,5

Cette valeur n'est pas associée à une chaîne. Pour plus d'informations sur la configuration des types MIME, consultez l'aide d'IIS.

Remarque
Pour que ces paramètres de registre prennent effet, il est nécessaire de fermer tous les services IIS après avoir ajouté le nouveau type MIME. Il ne suffit pas simplement d'arrêter et de redémarrer le service de publication Web. (En pratique, il est peu probable que les services FTP et Gopher fonctionnent en configuration ISS.)

Remarques sur la configuration spécifique Microsoft IIS

Cette version de l'exemple ISS a été testée sur IIS. Les rubriques suivantes traitent des remarques d'installation spécifiques à IIS, telles que celles relatives à cette version.

Code source CGI d'inscription

Le code source CGI est écrit en C standard et utilise simplement un fichier format d'initialisation de Windows commme base de données. Vous devez immédiatement modifier deux sections du fichier source :

Ces sections apparaissent dans « ISP Customization Section » dans les commentaires sur le code source.

Table de mots clés des données

Les éléments de la table de mots clés des données sont utilisés de deux façons différentes :

Fonctions interface de la base de données

Il existe deux groupes de fonctions interface de la base de données :

Validation des données

Outre les modifications de code CGI précédentes, vous souhaitez peut-être une validation des données à chaque publication CGI, ou attendre la conclusion de la transaction pour valider les données insérées par le client qui s'inscrit. L'exemple de code CGI montre la méthode de validation de chaque publication CGI. Si la validation des données échoue dans la fonction FormtoDB, le modèle HTML courant est regénéré et renvoyé au client HTTP. Vous pouvez modifier cette fonction (ProcessCurrent) pour inclure un message indiquant l'erreur de validation des données.

Création du code de traitement CGI

L'exemple de code de traitement CGI d'inscription a été compilé en utilisant Microsoft Visual C++ version 4.1. Un fichier de projet, Signup.mdb, est inclus dans ce kit pour recréer le fichier exécutable de traitement CGI si nécessaire. Dans la mesure où la base de données a été mise en oeuvre en utilisant les fonctions de fichier d'initialisation de Windows, le code source comprend le fichier Windows.h. Il peut être nécessaire de modifier quelque peu d'autres zones de code source si votre serveur HTTP ne fonctionne pas sur une plate-forme Microsoft Windows. Cependant, dans la plupart des cas, l'exemple de code est assez transférable.

Sécurité et pointeurs de session

L'exemple de code de traitement CGI d'inscription a été compilé avec des pointeurs de session générés séquentiellement. Pour une installation destinée au public, ces pointeurs de session doivent être générés avec un générateur de pointeurs aléatoires. L'utilisation de pointeurs aléatoires élimine la possibilité qu'un utilisateur devine le pointeur d'un autre utilisateur (ce qui est très facile avec des pointeurs séquentiels).