
Я только что установил httpd 2.4 на Amazone AMI и заметил, что в файле httpd.conf отсутствует много директив по сравнению с файлом conf 2.2. Например:ServerTokens, Тайм-аут, Подпись сервера, LoadModuleвсе отсутствуют.
Мой вопрос, если они явно не заданы в файле httpd.conf, они задаются где-то еще? Если нет, то каковы их значения по умолчанию и почему их нет в файле conf.
Стоит ли мне вручную устанавливать эти директивы?
решение1
Большинство директив будут иметь значения по умолчанию. Все значения по умолчанию вы найдете здесь:http://httpd.apache.org/docs/2.4/mod/directives.html
Не стоит беспокоиться о том, чтобы оставить их пустыми, если они не используются. Чтобы устранить любую двусмысленность, некоторые предпочитают включать директивы со значениями по умолчанию.
Также стоит отметить, что между версиями 2.2 и 2.4 есть некоторые изменения в значениях по умолчанию:http://httpd.apache.org/docs/2.4/upgrading.html
решение2
В системах, которыми я управляю, настройки ServerTokens/Signature находятся в отдельных включаемых файлах в каталоге конфигурации 'extra/'. В нижней части httpd.conf есть строки для включения этих дополнительных файлов, которые по умолчанию закомментированы. Я уверен, что так было по крайней мере с версии 2.2, если только используемый мной дистрибутив не устанавливает настроенный набор конфигурационных файлов.
Как говорит Джеймс, на сервере для большинства вещей установлены настройки по умолчанию, и их нужно настраивать только в том случае, если вы хотите их изменить.
решение3
Я обнаружил, что Amazon AMI включает строку, которая загружает модули из каталога, поэтому я не смог найти директиву LoadModule.
Включить conf.modules.d/*.conf
внутри этого каталога содержались следующие файлы конфигурации
00-base.conf 00-dav.conf 00-lua.conf 00-mpm.conf 00-proxy.conf 01-cgi.conf 10-php.conf