Dieser Abschnitt beschreibt die Komponenten, die im Ordner Server des Internet-Anmeldeserver-Kits enthalten sind. Wenn Sie nicht mit Microsoft IIS arbeiten oder eine andere Ordnerstruktur wⁿnschen, lesen Sie die folgenden Anmerkungen.
Der Client ist fⁿr DHCP konfiguriert. Sie mⁿssen den Internet-Anmeldeserver konfigurieren, um dem Client eine DHCP IP-Adresse zur Verfⁿgung zu stellen, wenn der Client eine Verbindung zum Server herstellt. Da der Anmeldevorgang relativ kurz ist, kann die Gⁿltigkeitsdauer der IP-Adresse sehr kurz sein und m÷glicherweise nur einige Minuten betragen.
Da die Anmeldeverarbeitung ⁿber eine Punkt-zu-Punkt-DF▄-Verbindung verwendet werden soll, muss es sich bei den dem DHCP-Server zugewiesenen IP-Adressen nicht um formal zugewiesene IP-Adressen handeln. Sie sind dafⁿr verantwortlich, ob es sich bei den DHCP-IP-Adressen um tatsΣchlich gⁿltige oder um willkⁿrliche Adressen handelt.
Damit der Client die .ins-Datei automatisch verarbeitet, mⁿssen Sie einen MIME-Typ fⁿr die .ins-Datei beim Internet-Anmeldeserver registrieren. Dieser MIME-Typ wurde als "application/x-Internet-signup" bestimmt. Wenn der Client eine .ins-Datei anfordert, antwortet der Internet-Anmeldeserver mit diesem MIME-Typ, der die entsprechende Installationsanwendung auf der Clientseite startet.
Hinzufⁿgen des MIME-Typs der .ins-DateiMIME-Typen mⁿssen Sie in der Registrierung manuell bearbeiten. Um den MIME-Typ der .ins-Datei zu bearbeiten, verwenden Sie Regedt32.exe, um die folgenden Informationen hinzuzufⁿgen:
Fⁿgen Sie unter diesem Schlⁿssel
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\InetInfo\Parameters\MimeMap
den folgenden Wert ein:
application/x-internet-signup,ins,,5
Mit diesem Wert ist keine Zeichenfolge verknⁿpft. Weitere Informationen zum Einrichten der MIME-Typen finden Sie au▀erdem in der IIS-Hilfe.
Anmerkung
Damit die Registrierungseinstellungen wirksam werden, mⁿssen alle IIS-Dienste nach dem Hinzufⁿgen des neuen MIME-Typs beendet werden. Es reicht nicht aus, den Web-Herausgeberdienst einfach nur anzuhalten und dann neu zu starten. (In der Praxis werden die Dienste FTP und Gopher in der Internet-Anmeldeserverkonfiguration wahrscheinlich nicht ausgefⁿhrt.)
Diese Version des Internet-Beispielanmeldeservers wurde mit IIS getestet. Die folgenden Themen behandeln Installationsanmerkungen, die fⁿr diese Version fⁿr IIS spezifisch sind.
Der CGI-Quellcode ist in Standard C geschrieben und verwendet eine einfache Datei im Windows-Initialisierungsformat als Datenbank. Sie sollten umgehend zwei Abschnitte der Quelldatei bearbeiten:
Diese Abschnitte werden in den Kommentaren des Quellcodes als "ISP Customization Section" angegeben.
Die Elemente der Datenschlⁿsselwort-Tabelle werden auf zwei Arten verwendet:
Es werden zwei Gruppen von Funktionen der Datenbankschnittstelle unterschieden:
Die Transaktionsstartfunktion erstellt eine eindeutige Sitzungszugriffsnummer, die einen bestimmten Anmeldeclient wΣhrend des restlichen Anmeldevorgangs identifiziert. Wie bereits erwΣhnt, kann es sich bei dieser Sitzungszugriffsnummer um eine einfache fortlaufende Nummer handeln (wie beispielsweise im CGI-Beispielcode) oder um einen Transaktionsbezeichner, der von Ihrem Datenbanksystem generiert wird. Der genaue Wert der Sitzungszugriffsnummer ist nicht wichtig, solange sie eindeutig ist, und Sie sie verwenden k÷nnen, um die Anmeldetransaktion zu verfolgen.
Sie k÷nnen die Transaktionsendefunktion verwenden, um die abschlie▀ende Transaktionsbearbeitung Ihrer eigenen Datenbank zu behandeln. Im CGI-Beispielcode wird ein Statuskennzeichen gesetzt, um anzugeben, dass die Transaktion akzeptiert wurde.
Die Transaktionsabbruchfunktion dient dem gleichen Zweck wie die Transaktionsendefunktion; Sie fⁿhren jedoch die entsprechende Aktion zur Behandlung des Anmeldeabbruchs aus.
ZusΣtzlich zu den vorherigen ─nderungen des CGI-Codes m÷chten Sie m÷glicherweise die Daten fⁿr jede CGI-▄bermittlung prⁿfen, oder Sie m÷chten bis zur Beendigung der Transaktion warten, um die vom Anmeldeclient eingegebenen Daten zu prⁿfen. Der CGI-Beispielcode zeigt das Verfahren zum ▄berprⁿfen jeder CGI-▄bertragung. Wenn die Datenprⁿfung in der Funktion FormtoDB fehlschlΣgt, wird die aktuelle HTML-Vorlage wiederhergestellt und nochmals an den HTTP-Client gesendet. Sie k÷nnen diese Funktion (ProcessCurrent) so bearbeiten, dass sie eine beliebige Meldung enthΣlt, die besagt, dass ein Fehler beim ▄berprⁿfen der Daten aufgetreten ist.
Der CGI-Beispielanmeldecode wurde unter Verwendung von Microsoft Visual C++, Version 4.1, kompiliert. Eine Projektdatei namens Signup.mdb ist in diesem Kit enthalten, damit Sie die ausfⁿhrbare CGI-Verarbeitungsdatei wie erforderlich neu erstellen k÷nnen. Da die Datenbank unter Verwendung der Funktionen der Windows-Initialisierungsdatei implementiert wurde, enthΣlt der Quellcode die Datei Windows.h. Andere Teile des Quellcodes mⁿssen m÷glicherweise geringfⁿgig angepasst werden, wenn Ihr HTTP-Server nicht auf einer Microsoft Windows-Plattform ausgefⁿhrt wird. In den meisten Teilen ist der Beispielcode jedoch gut portierbar.
Der CGI-Beispielanmeldecode wurde mit einfachen, nacheinander erzeugten Sitzungszugriffsnummern kompiliert. In allen ÷ffentlichen Implementierungen mⁿssen diese Sitzungszugriffsnummern jedoch mit einem Sitzungszugriffsnummer-Zufallsgenerator erzeugt werden. Die Verwendung zufΣlliger Zugriffsnummern verhindert, dass ein Benutzer die Zugriffsnummer eines anderen Benutzers erraten kann (dies ist mit aufeinanderfolgenden Zugriffsnummern au▀erordentlich einfach).