|
Suche |
In dieser Hilfe wird erklärt, wie man den Apache Server auf einer Maschine installiert. Wir haben den Webserver Apache ausgewählt, da dieser zur Zeit am weitesten verbreitet ist. Er ist ausserdem kostenlos, und der Quellcode ist frei verfügbar auf der Seite: http://www.apache.org Achtung!! Die Server von OVH haben bereits die Konfiguration. Sie können auch die Standardskripte zur Kompilierung auf unserem Server finden: ftp://ftp.ovh.net/made-in-ovh/patch Die Version mit der wir in dieser Hilfe arbeiten ist die 1.3.4. Diese können Sie auf der Webseite von Apache http://www.apache.org herunterladen; es handelt sich dabei um die Datei apache1.3.4.tar.gz. Bevor wir das heruntergeladene Archiv entpacken erstellen wir zuerst ein temporäres Verzeichnis mit dem Befehl: mkdir name_des_verzeichnisses Dann wird das Archiv mit folgendem Befehl entpackt: tar zxvf name_der _datei.tar.gz. Die Datei ist gezippt und getart. Die Quellen entpacken Sie in das zuvor erstellte temporäre Verzeichnis. Die zur Installation von Apache verwendeten Dateien sind folgende: Install und alle Dateien im Verzeichnis htdocs/manual. Dank dieser Dateien wissen wir dass der benötigte Platz für die Installation des Apache Servers 12 MB beträgt und dass die Installation einen C ANSI Compiler benötigt. Um den Apache Server zu kompilieren müssen Sie folgende Befehle verwenden: ./configure --prefix=PREFIX , wobei PREFIX für den Installationspfad steht (z.B.: /usr/local/apache) make make install PREFIX/sbin/apachectl start , womit man den HTTPD Daemon starten kann um zu prüfen dass die Kompilierung erfolgreich war (PREFIX steht auch hier für das Installationsverzeichnis). Obwohl auch Programme existieren um den Apache Server zu konfigurieren stellen wir Ihnen hier die Methode zur Konfiguration des Servers über die Modifikation von Textdateien im Verzeichnis conf vor. Die Konfigurationsdateien befinden sich im Verzeichnis /etc/httpd/conf. Es gibt 3 wichtige Dateien in der Konfiguration: access.conf: Enthält die Angaben, um die Zugangsrechte zum Server zu verwalten. srm.conf: Enthält die Angaben über die für mit einem Browser verbundenen Benutzer zugänglichen Namen und Typen. http.conf: Enthält die für die Funktion des Servers selbst benötigten Angaben. Mit folgendem Befehl starten Sie den Server: apachectl start Mit folgendem Befehl starten Sie den Server neu: apachectl restart Mit folgendem Befehl halten Sie den Server an: apachectl stop Für die folgenden Abschnitte ist es notwendig, einen Benutzer erstellt zu haben. Wenn Sie dies noch nciht getan haben, dann können Sie dazu folgenden Befehl verwenden: adduser Nehmen wir als Beispiel den Benutzer toto. adduser -g users toto Um den Namen des Benutzers zu ändern der den Webserver starten wird (hier: toto) muss die Datei http.conf editiert werden. Suchen Sie die Stelle an der User steht und ersetzen Sie nobody durch toto. Dies ergibt dann: #User ist der Benutzername unter dem der Server auf die Ressourcen des Computers zugreift User toto Um den virtuellen Port zu ändern auf dem der Server betrieben wird muss ebenfalls die Datei http.conf editiert werden. Suchen Sie nach der Stelle an der Port steht und ersetzen Sie den Wert der dahinter steht durch den von Ihnen gewünschten Port. Achtung: manche Ports sind reserviert (FTP, Telnet...)! Dies ergibt dann: #Der Standardport des Servers ist 80, wir ersetzen ihn durch Port 3000 Port 3000 Achtung!! Wenn Sie den virtuellen Port ändern, dann müssen Sie explizit den neuen Port angeben wenn Sie sich mit der Seite von toto verbinden wollen. In diesem Abschnitt möchten wir die Konfiguration so ändern, dass wenn man nach der URL http://mein_server/toto sucht, Apache die Aatei tutu.html im www Verzeichnis des Benutzers toto sucht. Dazu muss die Datei srm.conf editiert werden. Suchen Sie die Stelle an der DirectoryIndex steht und ändern Sie den folgenden Eintrag durch die zu ladende Datei. Dies ergibt dann: Name der Datei(en) die standardmässig anzuzeigen sind wenn in der URL keine Datei angegeben ist. Wenn Sie mehrere Dateien angeben möchten, dann werden diese einfach eine nach der anderen angegeben: DirectoryIndex pfad/toto/WWW/tutu.html Es ist möglich die Fehlermeldungen zu ändern indem man die Angaben hinter dem Eintrag ErrorDocument in der Datei srm.conf editiert. Zum Beispiel: ErrorDocument 500 "Internal Server Error" ersetzen durch: ErrorDocument 500 "Der Server hat einen Fehler gemacht" oder: ErrorDocument 404 /missing.html wird die Seite missing.html anzeigen wenn der Server die gewünschte Seite nicht finden kann (Fehlercode 404). Es gibt im Prinzip zwei Arten einen Server zu testen: Die erste, sehr klassische, besteht darin einen Browser zu verwenden und sich die Seite anzeigen zu lassen. Für die zweite nutzt man eine telnet Verbindung und gibt die Request direkt im Textmodus ein um die Antwort zu bekommen. Hier ein Beispiel zur Nutzung von telnet: man kann die Indexseite einer Domain herunterladen indem man telnet vodka 8080, dann get /index.html HTTP/1.0 gefolgt von zwei Mal ENTER eingibt. Die Antwort des Servers erfolgt in zwei Teilen, zuerst: Der Header der anzeigt ob die Frage verstanden wurde, indem er einen Wert zurückgibt (hier: 200 OK), ob die Ressource gefunden wurde, deren Typ... HTTP/1.0 200 OK Server : JavaWebServer/1.0.2 Content-length : 1721 Content-type : text/html Last-modified : Fri, 30 Jan 1998 13:55:28 GMT Connection :Close Date : Wed, 06 Jan 1999 16:12:28 GMT Und dann im zweiten Teil die Ressource selbst: die HTML Seite, das GIF Bild... Hier einige abweichende Rückmeldungen: 404 Not Found: Die angeforderte Seite wurde nciht gefunden 400 Bad Request: Die Abfrage konnte nicht interpretiert werden Die Felder Content-Length und Content-Type entsprechen der der Grösse und dem Typ des erhaltenen Dokuments. Damit der Server beim Start möglichst wenig Prozesse verwendet muss man die Datei httpd.conf editieren und nach dem Eintrag startservers suchen. Nach dem Eintrag steht normalerweise eine 5, es genügt dann einfach eine 1 an deren Stelle einzutragen um nur einen Prozess zu starten. VirtualHost erlaubt es, mehrere virtuelle Maschinen auf dem gleichen Server zu konfigurieren. Der Server muss so konfiguriert sein, dass er mehrere IP-Adressen akzeptiert; dies geschieht normalerweise, indem man den Linux Kernel des Servers konfiguriert. Die Konfiguration befindet sich in der Datei http.conf und hat folgende Form: VirtualHost domain_name.tld ServerAdmin webmaster@domain_name.tld DocumentRoot /verzeichnis ServerName domain_name.tld ErrorLog relatives verzeichnis TransferLog relatives verzeichnis /VirtualHost Definition von KeepAlive: Wenn diese Variable in der Datei http.conf auf ON gesetzt wird, dann erlaubt dies den Browsern anzugeben dass die Verbindungen aktiv bleiben sollen. Wenn die Variable auf OFF steht, dann ist diese Funktion deaktiviert. Dann findet man zu KeepAlive auch noch andere damit verbundene Variablen, wie zum Beispiel MaxKeepAliveRequests, die angibt wie viele Verbindungen gleichzeitig aktiv bleiben können, oder auch KeepAliveTimeout, die die maximale Dauer in Sekunden angibt für die aktiv gebliebene Verbindungen ohne eine Aktion warten. Definition von FollowSymLinks: Die Variable FollowSymLinks befindet sich in der Datei access.conf. Wenn sich diese Variable im Feld OptionsIndexes befindet wird die Verwendung symbolischer Links oder Abkürzungen unterstützt. Definition von FancyIndexing: Wenn diese Variable in der Datei srm.conf auf ON gestzt wird, dann werden Icons für die Dateien beim Auflisten von Ordnern angezeigt. Wenn sie auf OFF steht, dann werden Verzeichnisse nur als HTML angezeigt. Auf diese Variable folgend müssen sich dann eine Reihe von Iconnamen (mit vorgestelltem AddIcon) befinden, mit denen man die Typen der Dateien mit einem Icon verbinden kann wenn FancyIndexing ON ist. Anders gesagt, dies erlaubt es die bei der Anzeige der Ordner verwendeten Icons zu ändern. Ziel ist es, die Zugriffsrechte auf ein Verzeichnis der Webseite zu beschränken. Dies geschieht in zwei Schritten: Der Schutz einer Seite durch ein Passwort erfolgt einfach durch Hinzufügen folgender Regeln in der Datei access.conf: Files /verzeichnis/seite.html AuthName "In dem geschützten Fenster angezeigt Nachricht" AuthType Basic AuthUserFile /etc/users.http require valid-user /Files /verzeichnis/seite.html: Ist die geschützte Seite AuthName: Ist die in dem so geschützten Fenster angezeigte Nachricht AuthType: Wird normalerweise mit dem Wert "Basic" verwendet AuthUserFile: Ist die Datei die Benutzernamen und Passwort der Benutzer enthält, die Zugang zu dieser Seite haben require: Ist eine Direktive der man normalerweise den Wert valid-user (es muss ein gültiger Benutzer in der Datei AuthUserFile vorhanden sein) gibt; man kann jedoch auch nur bestimmte Benutzer freigeben (mit: require user toto) Die Erstellung eines Passworts erfolgt mit dem Programm htpasswd und folgender Syntax: htpasswd [-c] passwordfile username Mit der Option -c wird die Datei erstellt; ohne -c wird der Datei ein neuer Eintrag hinzugefügt. passwordfile ist der name der Datei die die Passwörter enthält. username ist der Benutzername. |