|
|
Zeile 31: |
Zeile 31: |
|
| |
|
| == Apache als Konsolenanwendung ausführen == | | == Apache als Konsolenanwendung ausführen == |
| Normalerweise wird empfohlen, den Apache als Dienst zu verwenden, aber manchmal ist es einfacher, von der Kommandozeile aus zu arbeiten, insbesondere bei der anfänglichen Konfiguration und beim Testen.
| | [[Apache/HTTP/Windows/Konsole]] |
| | |
| Um den Apache von der Kommandozeile aus als Konsolenanwendung zu starten, verwenden Sie den folgenden Befehl
| |
| | |
| httpd.exe
| |
| | |
| Der Apache wird ausgeführt und bleibt aktiv, bis er durch Drücken von Strg-C gestoppt wird.
| |
| | |
| Sie können Apache auch über die Verknüpfung Apache in der Konsole starten starten, die Sie während der Installation unter <tt>Startmenü --> Programme --> Apache HTTP Server</tt> 2 <tt>.4.xx --> Apache Server steuern</tt> platziert haben.
| |
| * Dadurch wird ein Konsolenfenster geöffnet und Apache darin gestartet.
| |
| * Wenn Sie Apache nicht als Dienst installiert haben, bleibt das Fenster sichtbar, bis Sie Apache durch Drücken von Strg-C in dem Konsolenfenster, in dem Apache läuft, beenden.
| |
| * Der Server beendet sich dann nach einigen Sekunden.
| |
| * Wenn Sie Apache jedoch als Dienst installiert haben, startet die Verknüpfung den Dienst.
| |
| * Wenn der Apache-Dienst bereits läuft, bewirkt die Verknüpfung gar nichts.
| |
| | |
| Wenn der Apache als Dienst läuft, können Sie ihn stoppen, indem Sie ein weiteres Konsolenfenster öffnen und eingeben
| |
| | |
| httpd.exe -k shutdown
| |
| | |
| Die Ausführung als Dienst sollte der Ausführung in einem Konsolenfenster vorgezogen werden, da der Apache auf diese Weise alle laufenden Operationen ordnungsgemäß beenden und aufräumen kann.
| |
| | |
| Wenn der Server jedoch in einem Konsolenfenster läuft, können Sie ihn nur durch Drücken von Strg-C im selben Fenster anhalten.
| |
| | |
| Sie können den Apache auch anweisen, neu zu starten.
| |
| * Dadurch wird er gezwungen, die Konfigurationsdatei neu zu lesen.
| |
| * Alle laufenden Operationen können ohne Unterbrechung zu Ende geführt werden.
| |
| * Um den Apache neu zu starten, drücken Sie entweder Control-Break in dem Konsolenfenster, das Sie zum Starten des Apache verwendet haben, oder geben Sie
| |
| | |
| httpd.exe -k Neustart
| |
| | |
| wenn der Server als Dienst läuft.
| |
| | |
| Hinweis für diejenigen, die mit der Unix-Version von Apache vertraut sind: Diese Befehle stellen eine Windows-Entsprechung zu <tt>kill -TERM ''pid''</tt> und <tt>kill -USR1 ''pid''</tt> dar.
| |
| * Die verwendete Kommandozeilenoption <tt>-k</tt> wurde in Anlehnung an den unter Unix verwendeten <tt>kill-Befehl</tt> gewählt.
| |
| | |
| Wenn das Apache-Konsolenfenster sofort oder unerwartet nach dem Start geschlossen wird, öffnen Sie die Eingabeaufforderung über das Startmenü --> Programme.
| |
| * Wechseln Sie in den Ordner, in den Sie Apache installiert haben, geben Sie den Befehl <tt>httpd.exe</tt> ein, und lesen Sie die Fehlermeldung.
| |
| * Wechseln Sie dann in den Ordner logs, und überprüfen Sie die Datei <tt>error.log</tt> auf Konfigurationsfehler.
| |
| * Angenommen, httpd wurde in C: <tt>\Programme\Apache Software Foundation\Apache2.4\</tt> installiert, dann können Sie Folgendes tun
| |
| | |
| c: cd "\Programmdateien\Apache Software Foundation\Apache2.4\bin" httpd.exe
| |
| | |
| Warten Sie dann, bis der Apache gestoppt wird, oder drücken Sie Control-C.
| |
| * Geben Sie dann Folgendes ein
| |
| | |
| cd ..\logs mehr < error.log
| |
| | |
| Bei der Arbeit mit dem Apache ist es wichtig zu wissen, wie er die Konfigurationsdatei finden kann.
| |
| * Sie können eine Konfigurationsdatei auf der Kommandozeile auf zwei Arten angeben:
| |
| * <tt>-f</tt> gibt einen absoluten oder relativen Pfad zu einer bestimmten Konfigurationsdatei an:
| |
| | |
| httpd.exe -f "c:\my server files\anotherconfig.conf"
| |
| | |
| oder
| |
| | |
| httpd.exe -f files\anotherconfig.conf
| |
| * <tt>-n</tt> gibt den installierten Apache-Dienst an, dessen Konfigurationsdatei verwendet werden soll:
| |
| | |
| httpd.exe -n "MeinDienstName"
| |
| | |
| In beiden Fällen sollte das richtige [https://httpd.apache.org/docs/current/mod/core.html#serverroot ServerRoot] in der Konfigurationsdatei festgelegt werden.
| |
| | |
| Wenn Sie keine Konfigurationsdatei mit <tt>-f</tt> oder <tt>-n</tt> angeben, verwendet der Apache den in den Server einkompilierten Dateinamen, z.B. <tt>conf\httpd.conf</tt>.
| |
| * Dieser eingebaute Pfad ist relativ zum Installationsverzeichnis.
| |
| * Sie können den kompilierten Dateinamen anhand eines als <tt>SERVER_CONFIG_FILE</tt> bezeichneten Wertes überprüfen, wenn Sie den Apache mit der Option <tt>-V</tt> aufrufen, etwa so
| |
| | |
| httpd.exe -V
| |
| | |
| Der Apache versucht dann, sein [https://httpd.apache.org/docs/current/mod/core.html#serverroot ServerRoot] zu bestimmen, indem er die folgenden Schritte in dieser Reihenfolge durchführt:# Eine [https://httpd.apache.org/docs/current/mod/core.html#serverroot ServerRoot-Anweisung] über den Befehlszeilenschalter <tt>-C</tt>.
| |
| # Der Schalter <tt>-d</tt> in der Befehlszeile.
| |
| # Aktuelles Arbeitsverzeichnis.
| |
| # Ein Registrierungseintrag, der bei einer Binärinstallation erstellt wurde.
| |
| # Das Stammverzeichnis des Servers, das in den Server einkompiliert wurde.
| |
| * Dies ist standardmäßig <tt>/apache</tt>.
| |
| * Sie können dies überprüfen, indem Sie <tt>httpd.exe -V</tt> verwenden und nach einem Wert mit der Bezeichnung <tt>HTTPD_ROOT</tt> suchen.
| |
| | |
| Wenn Sie keine Binärinstallation durchgeführt haben, wird sich der Apache in einigen Fällen über den fehlenden Registrierungsschlüssel beschweren.
| |
| * Diese Warnung kann ignoriert werden, wenn der Server ansonsten seine Konfigurationsdatei finden konnte.
| |
| | |
| Der Wert dieses Schlüssels ist das Verzeichnis [https://httpd.apache.org/docs/current/mod/core.html#serverroot ServerRoot], das das Unterverzeichnis <tt>conf</tt> enthält.
| |
| * Wenn der Apache startet, liest er die Datei <tt>httpd.conf</tt> aus diesem Verzeichnis.
| |
| * Wenn diese Datei eine [https://httpd.apache.org/docs/current/mod/core.html#serverroot ServerRoot-Anweisung]enthält, die ein anderes Verzeichnis als das aus dem obigen Registrierungsschlüssel ermittelte enthält, vergisst der Apache den Registrierungsschlüssel und verwendet das Verzeichnis aus der Konfigurationsdatei.
| |
| * Wenn Sie das Apache-Verzeichnis oder die Konfigurationsdateien an einen neuen Ort kopieren, müssen Sie unbedingt die [https://httpd.apache.org/docs/current/mod/core.html#serverroot ServerRoot-Anweisung] in der Datei <tt>httpd.conf</tt> aktualisieren, um den neuen Ort wiederzugeben.
| |
|
| |
|
| == Testen der Installation == | | == Testen der Installation == |
Apache HTTP Server unter Microsoft Windows
Beschreibung
Apache 2.4 unter Microsoft Windows installieren, konfigurieren und ausführen.
Es wird davon ausgegangen, dass eine Binärdistribution des Apache installiert wurde
Anforderungen an das Betriebssystem
Die primäre Windows-Plattform für die Ausführung von Apache 2.4 ist Windows 2000 oder höher.
- Besorgen Sie sich immer das aktuelle Service Pack und installieren Sie es, um Fehler im Betriebssystem zu vermeiden.
Apache HTTP Server-Versionen nach 2.2 laufen nicht auf Betriebssystemen vor Windows 2000.
Herunterladen von Apache für Windows
Das Apache HTTP Server Projekt selbst bietet keine Binärversionen von Software an, sondern nur Quellcode.
Wenn Sie den Apache HTTP Server nicht selbst kompilieren können, können Sie ein Binärpaket von zahlreichen Binärdistributionen aus dem Internet beziehen.
Beliebte Optionen für die Bereitstellung von Apache httpd und, optional, PHP und MySQL unter Microsoft Windows sind:
Apache für Windows anpassen
Apache/HTTP/Windows/Anpassen
Apache als Dienst ausführen
Apache/HTTP/Windows/Dienst
Apache als Konsolenanwendung ausführen
Apache/HTTP/Windows/Konsole
Testen der Installation
Nach dem Starten des Apache (entweder in einem Konsolenfenster oder als Dienst) lauscht er auf Port 80 (es sei denn, Sie haben die Listen-Direktive in den Konfigurationsdateien geändert oder den Apache nur für den aktuellen Benutzer installiert).
- Um sich mit dem Server zu verbinden und die Standardseite aufzurufen, starten Sie einen Browser und geben Sie diese URL ein
http://localhost/
Apache sollte mit einer Willkommensseite antworten und Sie sollten "It Works!" sehen.
- Wenn nichts passiert oder Sie eine Fehlermeldung erhalten, sehen Sie in der Datei error.log im Unterverzeichnis logs nach.
- Wenn Ihr Host nicht mit dem Netz verbunden ist oder wenn Sie ernsthafte Probleme mit Ihrer DNS-Konfiguration (Domain Name Service) haben, müssen Sie möglicherweise diese URL verwenden
http://127.0.0.1/
Wenn Sie Apache auf einem anderen Port laufen lassen, müssen Sie dies ausdrücklich in der URL angeben
http://127.0.0.1:8080/
Wenn Ihre Grundinstallation funktioniert, sollten Sie sie richtig konfigurieren, indem Sie die Dateien im Unterverzeichnis conf bearbeiten.
- Wenn Sie die Konfiguration des Windows NT-Dienstes für Apache ändern, versuchen Sie zunächst, ihn von der Befehlszeile aus zu starten, um sicherzustellen, dass der Dienst fehlerfrei startet.
Da der Apache nicht denselben Anschluss mit einer anderen TCP/IP-Anwendung teilen kann, müssen Sie möglicherweise bestimmte andere Dienste stoppen, deinstallieren oder neu konfigurieren, bevor Sie den Apache starten.
- Zu diesen kollidierenden Diensten gehören andere WWW-Server, einige Firewall-Implementierungen und sogar einige Client-Anwendungen (z. B. Skype), die Port 80 verwenden, um Firewall-Probleme zu umgehen.
Konfigurieren des Zugriffs auf Netzwerkressourcen
Der Zugriff auf Dateien über das Netzwerk kann über zwei von Windows bereitgestellte Mechanismen festgelegt werden
Zugeordnete Laufwerksbuchstaben z. B.
Alias "/images/" "Z:/"
UNC-Pfade z. B.
Alias "/images/" "//imagehost/www/images/"
Zugeordnete Laufwerksbuchstaben ermöglichen es dem Administrator, die Zuordnung zu einem bestimmten Rechner und Pfad außerhalb der Apache httpd-Konfiguration zu pflegen.
- Diese Zuordnungen sind jedoch nur mit interaktiven Sitzungen verbunden und stehen dem Apache httpd nicht direkt zur Verfügung, wenn er als Dienst gestartet wird. Verwenden Sie nur UNC-Pfade für Netzwerkressourcen in der Datei httpd.conf, damit der Zugriff auf die Ressourcen konsistent ist, unabhängig davon, wie der Apache httpd gestartet wird. (Die Beschränkung auf zugeordnete Laufwerksbuchstaben kann durch obskure und fehleranfällige Verfahren umgangen werden, dies wird jedoch nicht empfohlen).
Beispiel DocumentRoot mit UNC-Pfad
DocumentRoot "//dochost/www/html/"
Beispiel DocumentRoot mit IP-Adresse im UNC-Pfad
DocumentRoot "//192.168.1.50/docs/"
Beispiel-Alias und entsprechendes Verzeichnis mit UNC-Pfad
Alias "/images/" "//imagehost/www/images/"
<Verzeichnis "//imagehost/www/images/">
#...
</Verzeichnis>
Wenn Sie Apache httpd als Dienst ausführen, müssen Sie, wie oben beschrieben, ein separates Konto für den Zugriff auf Netzwerkressourcen erstellen.
Windows-Abstimmung
- Wenn mehr als ein paar Dutzend Piped Logger auf einer Betriebssysteminstanz verwendet werden, ist oft eine Vergrößerung des "Desktop-Heap" erforderlich.
- Ausführlichere Informationen finden Sie in der Dokumentation zu Piped Logging.