SELFHTML: CGI/Perl / WWW-Server lokal auf einem PC einrichten
Description: (SELFHTML 7.0) Wie Sie auf einem PC eine HTTP-Server-Umgebung einrichten, um CGI-Scripts in Ruhe und offline auszutesten.
Keywords: SELFHTML, CGI, Web-Server, Webserver, WWW-Server, HTTP, personal server

SELFHTML/Quickbar CGI/Perl Voraussetzungen/Allgemeines

| ## WWW-Server lokal auf einem PC einrichten
| Der eigene WWW-Server Geeignete Produkte Grundeinstellungen für den lokalen Betrieb

## Der eigene WWW-Server

Viele PC-Anwender mit Internet-Zugang verbinden mit dem Begriff WWW-Server eine Art Großrechner, auf dem die Daten liegen, die im Internet zu sehen sind. Eigentlich ist ein WWW-Server jedoch ein gar nicht besonders großes Software-Programm, das im Prinzip auf jedem Rechner laufen kann, also nicht nur auf Server-Rechnern im Internet, sondern auch auf jedem PC. Es ist nicht mal eine Internet-Verbindung erforderlich, um einen WWW-Server zu betreiben. Es muß lediglich ein TCP/IP-Socket vorhanden sein (unter MS Windows ist das zum Beispiel die WINSOCK.DLL). Wenn Sie also einen funktionierenden Internet-Zugang haben, sind bereits alle Voraussetzungen erfüllt, um einen WWW-Server offline und ohne Verbindungskosten zu betreiben. WWW-Browser und WWW-Server laufen dann auf dem gleichen Rechner, können aber so miteinander kommunizieren, wie es bei Online-Verbindungen ins Internet üblich ist.

Einen eigenen WWW-Server sollten Sie sich im hier behandelten Zusammenhang deshalb installieren, um lokal auf Ihrem PC eine CGI-Schnittstelle zu haben. Denn CGI funktioniert nur, wenn ein WWW-Server vorhanden ist. Vieles, was im WWW mit CGI möglich ist, können Sie dann auch lokal auf Ihrem PC realisieren. So können Sie eigene CGI-Scripts während der Erstellungsphase in Ruhe und ohne Online-Kosten austesten. Sie können dann genauso arbeiten, wie Sie es von HTML-Dateien oder JavaScripts her gewohnt sind. Außerdem bekommen Sie eher ein Gefühl für die Zusammenhänge zwischen WWW-Browser und WWW-Server.

Auch wenn Sie selber Provider sind, eine Standverbindung ins Internet haben und einen öffentlichen WWW-Server betreiben, ist es sinnvoll, auf einem separaten Arbeitsrechner einen lokalen WWW-Server einzurichten. So belasten Sie den öffentlichen Rechner nicht, während Sie CGI-Scripts erstellen und austesten.

Ein lokal installierter WWW-Server beeinträchtigt Ihren vorhandenen Internet-Zugang nicht. Er benutzt lediglich das TCP/IP-Protokoll Ihres Rechners (z.B. die WINSOCK.DLL). Einstellungen, die für Ihre Online-Verbindung ins Internet wichtig sind, interessieren den WWW-Server nicht und können unverändert bleiben.

## Geeignete Produkte

Erfreulicherweise gibt es im Internet verschiedene WWW-Server zum Downloaden, die Freeware oder Shareware sind, d.h. diese Produkte kosten nichts oder erfordern nach einer kostenlosen Testphase eine geringe Registriergebühr. Zum lokalen Einsatz sind solche Produkte völlig ausreichend. Die folgende Auswahl ist nicht vollständig, sondern beschränkt sich auf besonders geeignete Produkte.

### WWW-Server für MS Windows

OmniHTTPd
Freeware, läuft unter Windows 95 und Windows NT - besonders empfehlenswert, da er über alle wichtigen Features verfügt und einfach einzurichten ist.
Xitami
Freeware für verschiedene Plattformen, auch für Windows 95, Windows NT und Windows 3.1 - besonders empfehlenswert, da er über alle wichtigen Features verfügt und einfach einzurichten ist. Für Windows 3.1 gibt es jedoch derzeit noch keine CGI-Unterstützung.
FolkWeb
Shareware, läuft unter Windows 95 und Windows NT - empfehlenswert, da er über alle Features verfügt und neben CGI auch die Microsoft ISAPI-Schnittstelle für Scripts und Programme im WWW unterstützt.
WinHTTPd
Shareware, läuft unter Windows 3.1/ Windows f. Workgroups 3.11 - recht simpel, zum Thema CGI und Perl unbedingt auch die Seite Perl Scripts with Win 3.1 HTTP Server lesen.

### WWW-Server für Macintosh

Quid Pro Quo
Freeware für 68xxx-Prozessoren oder höher und alle Power Macs ab System 7.5 - besonders empfehlenswert, da er über alle Features verfügt und sehr einfach einzurichten ist.
WebStar
Freeware für 68030-Prozessoren oder höher - sehr empfehlenswert, da er über alle Features verfügt.

### WWW-Server für OS/2

Xitami
Freeware für verschiedene Plattformen, auch für OS/2 - sehr empfehlenswert, da er über alle Features verfügt.
Apache
Freeware, die OS/2-Version des Unix-Servers - sehr empfehlenswert, da er über alle Features verfügt.

### WWW-Server für Unix und Unix-Derivate

Apache
Freeware, C-Source-Code, der am eigenen System compiliert werden kann. Sehr empfehlenswert, da er über alle Features verfügt. Apache gilt derzeit als einer der führenden Web-Server für öffentliche Internet-Server-Rechner, kann aber auch problemlos lokal betrieben werden.
Xitami
Freeware für verschiedene Plattformen, auch für Unix und Unix-Derivate - C-Source-Code, der am eigenen System compiliert werden kann. Sehr empfehlenswert, da er über alle Features verfügt.

## Grundeinstellungen für den lokalen Betrieb

Ein WWW-Server ist kein Programm mit "Arbeitsoberfläche". Durch den Aufruf der ausführbaren Programmdatei starten Sie einfach den Server-Betrieb. Ihr WWW-Browser ist dann in der Lage, mit diesem Server auf Ihrem Rechner zu kommunizieren, genau so, wie der Browser mit jedem öffentlichen WWW-Server kommunizieren kann. Bevor das richtig funktioniert, müssen Sie den WWW-Server jedoch einrichten, d.h. wichtige Grundeinstellungen vornehmen.

Einige WWW-Server können Sie nach dem Starten dialoggesteuert einrichten (z.B. OmniHTTPd für Windows oder Quid Pro Quo für Macintosh), bei anderen Produkten richten Sie den Web-Server vor dem Start durch Editieren von Konfigurationsdateien ein. Suchen Sie im Zweifelsfall nach der Installation des Web-Servers in dessen Programmverzeichnis nach Hilfedateien. Dort sollte dokumentiert sein, wie Sie Ihren Web-Server einrichten können. Alle Einstellungen bleiben auf jeden Fall gespeichert. Wenn Ihr WWW-Server also erst mal funktioniert, brauchen Sie ihn nur noch durch Starten und Beenden der Programmdatei ein- und auszuschalten.

Folgende wichtige Daten müssen Sie nach Wunsch bzw. korrekt einstellen:

- IP-Adresse des Servers
  Für den lokalen Betrieb müssen Sie hier normalerweise die reservierte IP-Adresse `127.0.0.1` oder die Namensadresse `localhost` eintragen. Wenn beide Angaben nicht funktionieren, versuchen Sie, in den Hilfedateien Informationen zu finden, oder setzen Sie sich mit dem Produktanbieter des WWW-Servers über dessen Homepage (nach E-Mail-Adresse suchen!) in Verbindung. Wenn die Angaben funktionieren, können Sie im WWW-Browser nach Einschalten des WWW-Servers lokal gespeicherte HTML-Dateien über die Internet-Adressen `http://127.0.0.1/` oder `http://localhost/` aufrufen.
- Port des Servers
  Dabei ist normalerweise `80` einzutragen. Ports sind Nummern für Internet-Dienste. Für den Internet-Dienst FTP ist beispielsweise 21 die übliche Portnummer, für den WWW-Dienst ist es 80. Lesen Sie jedoch sicherheitshalber in der Dokumentation des WWW-Servers nach, welche Nummer Sie hier eintragen sollten.
- Stammverzeichnis für HTML-Dateien
  Dabei geben Sie entsprechend der Syntax Ihres Betriebssystems den Pfadnamen an, unterhalb dessen sich Ihre lokalen HTML-Dateien befinden. Wenn Sie beispielsweise MS Windows benutzen, könnten Sie hier z.B. `c:\www\daten` eingeben - je nachdem, wohin Sie Ihre lokale HTML-Einstiegsdatei abgelegt haben. Wenn Sie im Stammverzeichnis beispielsweise eine Datei `myhome.htm` haben, können Sie diese Datei bei eingeschaltetem WWW-Server mit Ihrem WWW-Browser via HTTP-Protokoll durch Eingabe von `http://127.0.0.1/myhome.htm` bzw. `http://localhost/myhome.htm` aufrufen.
- Default-HTML-Dateiname für Verzeichnisse
  Die häufigsten Namen dafür sind `index.html` oder `index.htm`. Wenn es eine HTML-Datei mit dem entsprechenden Namen in einem Verzeichnis gibt, genügt als URL-Adresse beispielsweise `http://127.0.0.01/verzeichnis/`, wobei dann `http://127.0.0.01/verzeichnis/index.html` aufgerufen wird.
- Stammverzeichnis und virtuelles Verzeichnis für CGI-Scripts
  Als Stammverzeichnis geben Sie entsprechend der Syntax Ihres Betriebssystems den Pfadnamen des Verzeichnisses an, in dem Sie ausführbare CGI-Scripts ablegen wollen. Der übliche Verzeichnisname dafür ist `cgi-bin`. Wenn Sie beispielsweise MS Windows benutzen, könnten Sie hier z.B. `c:\www\cgi-bin` eingeben - je nachdem, wohin Sie die CGI-Scripts ablegen wollen. Das betreffende Verzeichnis müssen Sie erstellen. Außerdem müssen Sie bei den meisten WWW-Servern ein virtuelles CGI-Verzeichnis angeben. Tragen Sie dabei am besten `/cgi-bin` ein. Wenn Sie dann beispielsweise ein Perl-Script namens `guestbook.pl` in dem CGI-Verzeichnis ablegen, können Sie es mit `http://127.0.0.1/cgi-bin/guestbook.pl` bzw. `http://localhost/cgi-bin/guestbook.pl` ausführen.
- Perl-Interpreter und andere Interpreter
  Um Perl-Scripts als CGI-Scripts ausführen zu können, müssen Sie den vollständigen Pfadnamen der ausführbaren Perl-Interpreter-Datei angeben. Unter MS-Windows müssen Sie beispielsweise `c:\www\perl\bin\perl.exe` eingeben, je nachdem, wo sich die ausführbare Programmdatei befindet. Dazu müssen Sie Perl bzw. den Perl-Interpreter installieren.
- Log-Dateien
  Die meisten WWW-Server führen "Logbücher" über alle HTTP-Zugriffe auf Dateien oder CGI-Programme. Das sind die standardisierten Log-Dateien. Es gibt drei wichtige Log-Dateien: eine für die Protokollierung der Zugriffe (`access.log`), eine für die Protokollierung der Herkunftsadressen (`referrer.log`), und eine für Fehlerprotokollierung (`error.log`). Tragen Sie am besten diese typischen Namen ein. Diese Dateien können Sie übrigens jederzeit mit einem Dateibetrachter oder Texteditor aufrufen.
- Timeouts
  Es gibt zeitliche Grenzwerte dafür, wie lange der WWW-Browser auf eine Antwort vom Server warten soll, und wie lange der Server versuchen soll, Daten an den WWW-Browser zu schicken. Die Angaben erfolgen in der Regel in Form von Millisekunden. Tragen Sie z.B. für Senden und Empfangen `60000` (= eine Minute) ein.
- Mime-Typen
  Mime-Typen legen in diesem Zusammenhang die Dateiformate fest, die der WWW-Server kennt und bereit ist an den aufrufenden WWW-Browser zu übertragen. Andere Dateitypen als die hier angegebenen sendet der Server nicht. Normalerweise sind bereits alle wichtigen Dateitypen vorkonfiguriert. Um einen bestimmten Dateityp (z.B. Excel-Dateien) hinzuzufügen, müssen Sie einen Mime-Type-Namen (z.B `application/ms-excel`) und eine typische Dateinamenendung (z.B. `.xls`) angeben. Dann ist der Server bereit, solche Dateien an den WWW-Browser zu übertragen. Der Browser muß natürlich wissen, was er mit dem betreffenden Dateityp tun soll (siehe hierzu den Abschnitt Verweise auf beliebige Dateien im Internet).

Es gibt weitere Einstellmöglichkeiten. Wenn Sie die oben genannten Einstellungen korrekt vorgenommen haben, sollte Ihr WWW-Server für den lokalen Betrieb jedoch betriebsbereit sein.

weiter: | Perl lokal auf einem PC einrichten
zurück: | CGI und HTML

SELFHTML/Quickbar CGI/Perl Voraussetzungen/Allgemeines

© 1998 Stefan Münz, muenz@csi.com