
Ich habe gerade httpd 2.4 auf einem Amazone AMI eingerichtet und mir ist aufgefallen, dass in der Datei httpd.conf im Vergleich zu einer 2.2-Conf-Datei viele Anweisungen fehlen. Zum Beispiel:ServerTokens, Timeout, Serversignatur, LoadModulesind alle nicht vorhanden.
Meine Frage ist: Wenn sie nicht explizit in der Datei httpd.conf festgelegt sind, werden sie dann irgendwo anders festgelegt? Wenn nicht, was sind ihre Standardwerte und warum stehen sie nicht in der conf-Datei?
Sollte ich diese Anweisungen manuell festlegen?
Antwort1
Die meisten Anweisungen haben Standardwerte. Sie finden alle Standardwerte hier:http://httpd.apache.org/docs/2.4/mod/directives.html
Sie müssen sich keine Sorgen machen, wenn Sie sie leer lassen, wenn sie nicht verwendet werden. Um Unklarheiten zu vermeiden, ziehen es manche Leute vor, die Anweisungen mit ihren Standardwerten einzuschließen.
Beachten Sie auch, dass es zwischen 2.2 und 2.4 einige Änderungen hinsichtlich der Standardwerte gibt:http://httpd.apache.org/docs/2.4/upgrading.html
Antwort2
Auf den Systemen, die ich verwalte, befinden sich die ServerTokens/Signature-Einstellungen in separaten Include-Dateien im Konfigurationsverzeichnis „extra/“. Am Ende von httpd.conf gibt es Zeilen zum Einbinden dieser zusätzlichen Dateien, die standardmäßig auskommentiert sind. Ich bin mir jedoch sicher, dass dies seit mindestens v2.2 so ist, es sei denn, die von mir verwendete Distribution installiert einen angepassten Satz von Konfigurationsdateien.
Wie James sagt, hat der Server für die meisten Dinge Standardeinstellungen und müssen nur festgelegt werden, wenn Sie sie ändern möchten.
Antwort3
Ich habe festgestellt, dass das Amazon AMI eine Zeile enthält, die Module aus dem Verzeichnis a lädt, weshalb ich die LoadModule-Direktive nicht finden konnte
Include conf.modules.d/*.conf
in diesem Verzeichnis befanden sich die folgenden Conf-Dateien
00-base.conf 00-dav.conf 00-lua.conf 00-mpm.conf 00-proxy.conf 01-cgi.conf 10-php.conf