Apache unter Windows installieren
Ein Webserver lohnt sich auch im kleinen Intranet. Informationen stehen zentral bereit, jeder Mitarbeiter ist stets informiert. Apache bildet dieideale Grundlage als Webserver und ist die Alternative zum Internet Information Server.
Dieser Artikel ist im Jahr 2002 in PC Professionell erschienen
Das sind die Gründe, einen Apache-Webserver unter Windows zu installieren:
- er ist Open Source und damit gratis
- er ist sicher
- er ist plattformübergreifend, läuft unter Windows 98 ebenso wie unter 2000, XP und Linux
- er ist der meist genutzte Server im Web
- er ist schnell und einfach zu konfigurieren
- er hat Schnittstellen zu allen wichtigen Sprachen im Web: Perl, PHP, ASP
- er ist modular erweiterbar
Reicht das? Dann installieren Sie doch einen Apache-Webserver auf Ihrem Rechner. Er eignet sich nicht nur als Server für das eigene Intranet. Er ist auch ideal, um auf dem eigenen Rechner Intnernet-Anwendungen und Webseiten zu entwickeln und zu testen.
Vorbereitungen
Die ideale Windows-Plattform für Apache ist Windows 2000 oder Windows XP. Apache installiert sich hier auf Wunsch als Dienst und profitiert von Multithreading und der stabilen Plattform. Als Hardware genügt ein Pentium 266. Der kommt auch mit Windows 2000 gut zurecht. Und wenn der Computer-Oldie nichts anderes zu tun hat, als dem Intranet mit fünf, zehn oder fünfzig Clients zu dienen, ist er nicht einmal ausgelastet. Natürlich dürfen Sie Apache auch auf Ihrem Arbeitsrechner installieren -- aber nur, um eigene Web-Anwendungen zu testen.
Wer dagegen den Apache-Server auf Windows 95 oder 98 installieren möchte, benötigt eine neue Version des Microsoft-Installationsprogramms MSI. Das findet der Netzwerker im Internet unter http://www.microsoft.com/downloads/release.asp?ReleaseID=17343..
Auch für Windows NT ist ein neue Installer notwendig: http://www.microsoft.com/downloads/release.asp?ReleaseID=17344. Windows 2000 und XP haben, ebenso wie Windows ME einen passenden Installer eingebaut.
Für Windows 95 ist zudem ein Winsock-Update notwendig. Das findet sich unter http://www.microsoft.com/windows/downloads/bin/W95ws2setup.exe. (Dieser Link funktioniert leider nicht mehr im Jahr 2005.)
Allerdings sollte sich der Webmaster in spe überlegen, ob er wirklich einen 95/98/ME-Rechner als Server einsetzen will. Zwar ist dies ein Weg, auch alten P100-Rechnern noch zu einem Gnadenbrot zu verhelfen. Aber die lausige Stabilität der alten Microsoft-Betriebssysteme schließt den Dauereinsatz als Intranet-Server aus.
Wer den IIS auf dem Rechner schon betreibt und Apache dennoch auf den Port 80 installieren will, der sollte vor dem Einrichten den IIS deaktivieren. Das geht in WIndows XP über Start – Systemsteuerung – Leistung und Wartung - Verwaltung – Internet Informationsdienste. Hier klicken Sie doppelt auf den Namen Ihres Computers, danach doppelt auf Websites und dann mit der rechten Maustaste auf Standardwebsite. Nach einem Klick auf Anhalten steht der IIS und Sie können mit Download und Installation loslegen.
Download
Die jeweils neueste Version von Apache ist im Web unter www.apache.org erhältlich. Zum Zeitpunkt dieses Beitrags aktuell ist die Release-Nummer 2.0.39. Und die finden Sie unter der Adresse http://www.apache.org/dist/httpd/binaries/win32/ im Internet. Mit einem Klick auf apache_2.0.39-win32-x86-no_ssl.msi startet der Download.
Die Installation startet nach einem Doppelklick auf das MSI-Package. Nach einigen Klicks auf Next fordert das Setup die Eingabe von Domain, Servernamen und Adresse des Webmasters. Sollten Sie diese Einträge nicht kennen, ist das auch kein Problem – so lange Sie mit dem Server nicht ins Internet wollen oder sich in eine große Firmenstruktur einfügen müssen. In diesem Fall sollten Sie den Netz-Verantwortlichen fragen.
Für den lokalen Betrieb und kleine Intranets geben Sie als Domain local und als Servernamen den Namen Ihres Windows-Rechners, gefolgt von local an, zum Beispiel: pegnitz.local. Als E-Mail-Adresse wählen Sie Ihren Account auf dem lokalen Mail-Server oder verwenden Ihre normale E-Mail-Adresse aus dem Internet.
Wichtig ist die Einstellung, ob Sie den Server für alle Benutzer oder nur für sich selbst installieren wollen. Für Testzwecke nehmen Sie die zweite Option. Dann startet Apache nur nach Aufforderung und belegt außerdem den Port 8080 – das schützt vor Problemen, falls noch nebenbei der IIS läuft.
Für den Einsatz als Intranet-Server verwenden Sie die obere Option for All Users, on Port 80, as a Service. Falls Sie später einen anderen Port haben wollen, ist das auch kein Problem. Wie das geht, lesen Sie im Abschnitt "Feineinstellungen".
Nach einem weiteren Klick auf Next wählen Sie die Art der Installation. Im Allgemeinen belassen Sie es bei "Typical". Ein Next weiter folgt die Auswahl des Installationsordners und noch ein Next später geht es mit Install endlich los. Ein paar Sekunden später haben Sie einen Web-Server.
Der erste Test
Die Minute der Wahrheit kommt nach der Installation: Starten Sie den einen Browser und geben Sie als URL localhost ein. Im Browser sollte dann "Es klappt! Der Apache-Webserver ist auf dieser Website installiert!" erscheinen. Ist das der Fall, funktioniert schon alles.
Falls sich nichts rührt und eine Fehlermeldung kommt, probieren Sie, den Server über Start – Programme – Apache HTTP Server – Control Apache Server – Start anzuwerfen. Bleibt der Browsertest auch danach erfolglos, ist vermutlich der Dienst nicht richtig installiert. Die Abhilfe heißt Neustart und nochmalige Installation. Wählen Sie dabei den Repair-Modus.
Grundlegendes
Läuft der Apache erst einmal, fängt die eigentliche Arbeit an. Zunächst sollten Sie sich um eine neue Homepage kümmern. Die HTML-Dateien gehören in das Verzeichnis X:\Programme\Apache Group\Apache2\htdocs. X steht hierbei für das Laufwerk, auf dem Apache installiert ist. Kleiner Tipp: Legen Sie gleich eine Verknüpfung zu diesem Ordner auf dem Deskop an – das spart endloses Klicken. Den Inhalt dieses Verzeichnisses können Sie löschen. Ihre eigene Homepage sollte den Namen index.html tragen.
Ein eigenes HTML-Verzeichnis einrichten
Webmaster, die ihre HTML-Dateien lieber in einem eigenen Ordner haben, lernen die httpd.conf kennen. Die erreichen Sie über Start – Programme – Apache HTTP Server – Configure Apache Server - Edit the Apache httpd.conf Configuration File. Mit Bearbeiten – Suchen stöbern Sie nach dem Eintrag DocumentRoot.
Ein paar Zeilen unter der ersten Fundstelle findet sich der Eintrag DocumentRoot "X:/Programme/Apache Group/Apache2/htdocs". Der lässt sich einfach überschreiben, beispielsweise mit DocumentRoot "X:/html". Freunde von Windows sollten auf die nach vorne geneigten Schrägstriche achten. Ebenso wichtig: der Verzeichnisname darf nicht mit / enden.
Ein paar Zeilen weiter unten gilt es, noch eine Änderung vorzunehmen. Ändern Sie in der Zeile
Nach dem Speichern der Konfigurationsdatei geht es weiter mit Start – Programme – Apache HTTP Server – Control Apache Server – Restart. Schneller geht der Neustart, indem Sie auf das Apache-Symbol in der Taskleiste neben der Uhr klicken. Klicken Sie anschließend auf Apache2 und Restart.
Namen der Standarddateien ändern
Nicht jeder möchte eine index.html als Startseite. Umsteiger aus der Windows-Welt haben vielleicht lieber eine index.htm oder eine welcome.htm.
Welche Dateien Apache als Default anzeigt, legt ebenfalls die httpd.conf fest. Diesmal suchen Sie nach DirectoryIndex. Wenige Zeilen unter der Fundstelle steht die Zeile
DirectoryIndex index.html index.html.var
Der Server sucht also zuerst nach einer index.html, dann nach index.html.var. Findet er keine dieser Dateien, erscheint eine Fehlermeldung.
Um auch index.htm und welcome.htm in den Reigen der Standard-Dateien aufzunehmen, schreiben Sie diese einfach vor oder hinter die anderen Einträge in der Zeile.
Wichtig ist die Reihenfolge: Stehen in einem Verzeichnis sowohl eine index.htm wie auch eine index.html, so nimmt der Server die Datei, die bei DirectoryIndex weiter vorne steht. Nach der Änderung könnte der Parameter zum Beispiel so aussehen:
DirectoryIndex index.htm index.html welcome.htm welcome.html
Wieder gilt: Speichern und den Server neu starten.
Den Zugriff begrenzen
Gerade wenn Sie den Server nur zu Testzwecken verwenden, sollten Sie den Zugriff darauf einschränken. Anderenfalls kann jeder Computer aus dem gleichen Subnetz auf die Site zugreifen. Den Zugriff steuert die Option order. In der Default-Konfiguration steht dieser Eintrag in der Sektion
#
# Controls who can get stuff from this server.
#
Order allow,deny
Allow from all
Der liest sich so: "erlaube zunächst allen den Zugriff (allow), falls Du dann noch jemanden vom Zugriff ausschließen willst, kannst Du das immer noch machen (deny)". Danach erfolgt die Anweisung "allow from all", also "erlaube den Zugriff auf den Webseite von allen Rechnern aus". Wer will, kann hier noch einen bestimmten Rechner vom Zugriff ausschließen, zum Beispiel mit "deny from 192.168.0.80".
Um generell erst einmal alle anderen Computer vom Zugriff auszuschließen, dreht der Webmaster die Anweisung um:
Order deny,allow
Deny from all
Allow from 127.0.0.1
Damit darf nur Ihr eigener Rechner an die Website. Alle anderen Computer erhalten eine freundliche Fehlermeldung.
Wer mehreren Computern den Zugriff erlauben will, schreibt die IP-Adressen hintereinander, zum Beispiel
Allow from 127.0.0.1 192.168.0.21
Alternativ dazu lassen sich Subnetze angeben, etwa
Allow from 192.168.0
für den Zugriff von allen Computern von 192.168.0.1 bis 192.168.0.255 oder mit der Subnetzmaske kombiniert
Allow from 10.1.0.0/255.255.0.0
So lange der Server im Intranet steht, sollte der Zugriff so restriktiv wie möglich gestaltet sein.
Andere Verzeichnisse einbinden
Im Intranet unerlässlich: Das Bereitstellen von Informationen. Verzeichnisse mit Word-Dokumenten oder Excel-Spreadsheets lassen sich auch per Browser laden. Der Vorteil: Sie müssen sich nicht mit Verzeichnisfreigaben herumschlagen. Und klickt ein Mit-Netzwerker eine Datei an, so wird diese auch mit der passenden Applikation geladen.
Das Problem ist nur: Wie kommen die Verzeichnisse auf den Webserver? Regelmäßig Kopien in ein Verzeichnis zu bringen scheidet aus: Ineffizient und aufwendig. Also richtet der Intranet-Master ein Alias ein: Das nimmt ein Verzeichnis auf dem Server-PC und macht dieses als scheinbares Unterverzeichnis dem Browser-Publikum zugänglich.
Die Option heißt "Alias". Als ersten Parameter geben Sie den Namen ein, unter dem das Verzeichnis im Browser erscheinen soll. Nach einem Leerzeichen folgt der wirkliche Verzeichnisname, zum Beispiel:
Alias /word "f:/texte"
Die Anführungszeichen um den Namen des Windows-Verzeichnisses sind vor allem dann wichtig, wenn der Ordnername ein Leerzeichen enthält.
Den neuen Parameter tragen Sie am besten direkt unter der der DocumenRoot-Anweisung ein.
Zusätzlich müssen Sie für das Verzeichnis noch einen Directory-Eintrag schreiben, um dieses freizugeben.
Dieser Eintrag kann so aussehen:
Options Indexes
Order allow,deny
Allow from all
Wichtig ist hier die Option Indexes. Sie sorgt dafür, dass eine Liste von Dateien angezeigt wird. Die Zugriffsregelung ist hier sehr offen – passen Sie diese Einträge gegebenenfalls wie beschrieben an.
Daten von anderen Servern einbinden
Auch das geht: Der Apache-Server zeigt Verzeichnisse eines anderen Servers so an, als wären es seine eigenen. Intranet-Verwalter bauen auf diese Weise zum Beispiel den Speiseplan von http://hauptserver/kantine/speiseplan.html auf ihrem Server als http://meinserver/essen/speiseplan.html ein. Die entsprechende Anweisung heißt
ProxyPass /essen/ http://hauptserver/kantine/
Damit richtet der Apache-Server ein virtuelles Verzeichnis ein, das sich im Verzeichnis essen des Servers meinserver mit Daten versorgt.
Diese Anweisung schreiben Sie am besten unterhalb der DocumentRoot-Option. Damit ist aber noch nicht alle Arbeit erledigt. Es gilt noch, die entsprechenden Module in Apache einzubinden. Dies geschieht ebenfalls in der httpd.conf. Hier steht die Zeile
#LoadModule proxy_module modules/mod_proxy.so
und zwei Zeilen darunter
#LoadModule proxy_http_module modules/mod_proxy_http.so
(Am besten verwenden Sie die Suchfunktion und die Suche nach"mod_proxy", um diese Zeilen aufzustöbern).
Entfernen Sie vor beiden Zeilen jeweils das #. Nach einem Neustart bindet Apache dann diese beiden Module ein und zeigt nach der Eingabe von http://localhost/kantine/speiseplan.html die entsprechende Datei vom Server "meinessen".
Das ist neu in Apache 2.0
Apache 2.0 ist erst seit wenigen Monaten erhältlich und löst das alte Apache 1.3 langsam ab. Die wichtigsten Neuerungen der zweiten Version sind:
- Bessere Unterstützung von Nicht-Unix-Systemen. Dank der Verwendung Betriebssystem spezifischer APIs ist ist Apache schneller und stabiler.
- Mit IPv6 untersützt Apache das kommende Internet-Protocol.
- Apache-Module können nun auch als Filter arbeiten und ein- oder ausgehende Daten bearbeiten.
- Mehrsprachige Fehlermeldungen, auch in Deutsch.
- Die Konfigurationsdatei wurde entrümpelt.
- Viele Module wurden verbessert, neue Module sind hinzugekommen, zum Beispiel mod_ssl für die Verschlüsselung von Daten oder mod_file_cache für das Caching von Daten.




