
У меня есть веб-сервер, работающий Apache/2.2.22
на Debian/7.8
.
Я хотел бы отключить подпись, которая добавляется в конце страниц с ошибками:
Not Found
The requested URL /sdffds.html was not found on this server.
_____________________________
Apache/2.2.22 (Debian) Server at xxx Port 80 <-- this
Я должен был бы сделать это, отредактировав файл /etc/apache2/conf.d/security
. Я сделал это, раскомментировав ServerSignature Off
(и закомментировав ServerSignature On
). Однако после перезагрузки/перезапуска apache2 это не работает.
Я проверил apache2.conf
, инструкция Include conf.d/
здесь. Это означает, что либо apache2 не видит conf.d
файлы должным образом, либо я допустил ошибку при редактировании conf.d/security
.
Для уверенности я отредактировал apache2.conf
и вставил Include conf.d/security
, все работает.
Почему apache2 неправильно ищет conf.d/
файлы?
решение1
Я почти уверен, что Apache будет брать из каталога conf.d только файлы, заканчивающиеся на «.conf».
Попробуйте изменить ..conf.d/security на ..conf.d/security.conf
В качестве альтернативы вы можете добавить «ServerSignature Off» в основной файл конфигурации, и все должно работать нормально.
решение2
На самом деле Include conf.d/
загружает все файлы (в алфавитном порядке, я думаю) независимо от расширения из conf.d/
. Я также столкнулся с той же проблемой после установки ServerSignature Off
в security
файле, и причина была в том, что у меня была резервная копия исходного файла безопасности внутри conf.d/
под названием security.bak
(который содержит ServerSignature On
). Поэтому вам нужно убедиться, что нет других файлов, conf.d/
которые могут вызвать конфликт. Потому что в моем случае security.bak
загрузка была после , security
поэтому он переопределял мои настройки. Решение, предоставленное Jacob Margason, решит и вашу проблему, потому что добавление ServerSignature Off
в конце apache2.conf
переопределяет все