Apache/HTTP/Windows/Dienst
Apache/HTTP/Windows/Dienst - Apache als Dienst ausführen
Apache Service Monitor
- Dienstprogramm
Installierte Apache-Dienste sehen und verwalten
- auf jedem Rechner im Netzwerk
- Dienst installieren
- automatisch während der Installation
- manuell
Installieren
- Windows-Dienst über die Eingabeaufforderung installieren
Unterverzeichnis Apache bin
httpd.exe -k install
- Namen des Dienstes
Wenn Sie den Namen des zu installierenden Dienstes angeben müssen, verwenden Sie den folgenden Befehl
- Sie müssen dies tun, wenn Sie mehrere verschiedene Apache-Dienste auf Ihrem Computer installiert haben
- Wenn Sie während der Installation einen Namen angeben, müssen Sie ihn auch bei jeder anderen -k Operation angeben
httpd.exe -k install -n "MeinDienstName"
- Spezielle Konfigurationsdateien
Speziell Konfigurationsdateie für verschiedene
httpd.exe -k install -n "MeinDienstName" -f "c:\files\my.conf"
- Ohne spezielle Parameter
Wenn Sie den ersten Befehl ohne spezielle Parameter außer -k install verwenden, wird der Dienst Apache2.4 genannt und die Konfiguration wird als conf\httpd.conf angenommen
Entfernen
httpd.exe -k uninstall
Der spezifische Apache-Dienst, der deinstalliert werden soll, kann mithilfe von angegeben werden
httpd.exe -k uninstall -n "MeinDienstName"
Steuern
Das normale Starten, Neustarten und Beenden eines Apache-Dienstes erfolgt in der Regel über den Apache Service Monitor, mit Befehlen wie NET START Apache2.4 und NET STOP Apache2.4 oder über die normale Windows-Dienstverwaltung
Bevor Sie den Apache als Dienst starten, sollten Sie die Konfigurationsdatei des Dienstes testen, indem Sie
httpd.exe -n "MeinDienstName" -t
Sie können einen Apache-Dienst auch über seine Kommandozeilenparameter steuern
Um einen installierten Apache-Dienst zu starten, verwenden Sie den folgenden Befehl
httpd.exe -k start -n "MeinDienstName"
Um einen Apache-Dienst über die Befehlszeilenschalter zu stoppen, verwenden Sie Folgendes
httpd.exe -k stop -n "MeinDienstName"
oder
httpd.exe -k shutdown -n "MeinDienstName"
Sie können auch einen laufenden Dienst neu starten und ihn zwingen, seine Konfigurationsdatei neu einzulesen, indem Sie verwenden
httpd.exe -k restart -n "MeinDienstName"
Dienst-Benutzer
Systembenutzer
- Standardmäßig läuft Apache mit dem Systembenutzer
Standardmäßig sind alle Apache-Dienste so registriert, dass sie unter dem Systembenutzer (dem LocalSystem-Konto ) laufen
- Das LocalSystem-Konto hat keine Berechtigungen für Ihr Netzwerk über einen Windows-gesicherten Mechanismus, einschließlich des Dateisystems, Named Pipes, DCOM oder Secure RPC
- Es hat jedoch lokal weitreichende Rechte
Gewähren Sie dem LocalSystem-Konto niemals irgendwelche Netzwerkprivilegien! Wenn der Apache auf Netzwerkressourcen zugreifen muss, erstellen Sie ein separates Konto für den Apache (siehe unten).
Separates Konto
Es wird empfohlen, dass Benutzer ein separates Konto für die Ausführung von Apache-Diensten erstellen
- Wenn Sie über Apache auf Netzwerkressourcen zugreifen müssen, ist dies erforderlich.
- Legen Sie ein normales Domänen-Benutzerkonto an, und merken Sie sich das Passwort
- Gewähren Sie dem neu erstellten Benutzer die Berechtigung, sich als Dienst anzumelden und als Teil des Betriebssystems zu agieren
- Unter Windows 4.0 werden diese Berechtigungen über den Benutzer-Manager für Domänen gewährt, aber unter Windows 2000 und XP möchten Sie wahrscheinlich die Gruppenrichtlinie für die Verbreitung dieser Einstellungen verwenden
- Sie können diese Einstellungen auch manuell über das MMC-Snap-In Lokale Sicherheitsrichtlinie vornehmen
- Bestätigen Sie, dass das erstellte Konto ein Mitglied der Gruppe Benutzer ist
- Gewähren Sie dem Konto Lese- und Ausführungsrechte (RX) für alle Dokument- und Skriptordner( z. :B.htdocs und cgi-bin)
- Erteilen Sie dem Konto Änderungsrechte (RWXD) für das Apache-Logs-Verzeichnis
- Gewähren Sie dem Konto Lese- und Ausführungsrechte (RX) für die ausführbare Binärdatei httpd.exe
Es ist in der Regel eine gute Praxis, dem Benutzer, der den Apache-Dienst ausführt, Lese- und Ausführungsrechte (RX) für das gesamte Apache2.4-Verzeichnis zu gewähren, mit Ausnahme des Unterverzeichnisses logs, für das der Benutzer mindestens Änderungsrechte (RWXD) haben muss
- Anmeldung als Benutzer
Wenn Sie dem Konto erlauben, sich als Benutzer und als Dienst anzumelden, können Sie sich mit diesem Konto anmelden und testen, ob das Konto die Berechtigung hat, die Skripte auszuführen, die Webseiten zu lesen und Apache in einem Konsolenfenster zu starten
- Wenn dies funktioniert und Sie die oben genannten Schritte befolgt haben, sollte der Apache ohne Probleme als Dienst ausgeführt werden
- Fehlercode 2186
Der Fehlercode 2186 ist ein guter Hinweis darauf, dass Sie die "Anmelden als"-Konfiguration für den Dienst überprüfen müssen, da der Apache nicht auf eine erforderliche Netzwerkressource zugreifen kann
- Achten Sie auch auf die Berechtigungen des Benutzers, unter dem Apache ausgeführt werden soll
Fehlerbehebung
- Probleme mit dem Dienst
Wenn Sie Probleme mit dem Dienst haben
- sollten Sie die folgenden Anweisungen befolgen
- um zu versuchen, httpd.exe von einem Konsolenfenster aus zu starten
- und die Fehler zu beheben,
- bevor Sie versuchen, ihn erneut als Dienst zu starten
Dienstesteuerungsmanager
Wenn Sie Apache als Dienst starten, kann eine Fehlermeldung des Windows-Dienstesteuerungsmanagers erscheinen
- Wenn Sie z. B. versuchen, Apache über das Applet "Dienste" in der Windows-Systemsteuerung zu starten, erhalten Sie möglicherweise die folgende Meldung
Der Apache2.4-Dienst konnte auf nicht gestartet werden. Fehler 1067; Der Prozess wurde unerwartet beendet
Sie erhalten diese allgemeine Fehlermeldung, wenn es ein Problem beim Starten des Apache-Dienstes gibt
- Um herauszufinden, was das Problem wirklich verursacht, sollten Sie die Anweisungen zum Ausführen von Apache für Windows über die Eingabeaufforderung befolgen