У меня есть Apache / 2.4 .18 в Ubuntu 16.04 с PHP 7.0. Я хотел добавить в /etc/apache2./apache2.conf следующее:
Header set X-XSS-Protection "1; mode=block"
Я прочитал, что я должен установить mod_headers.c
и выполнить следующие команды:
a2enmod headers
sudo /etc/init.d/apache2 restart
Хотя когда я делаю apache2 -l
Compiled in modules:
core.c
mod_so.c
mod_watchdog.c
http_core.c
mod_log_config.c
mod_logio.c
mod_version.c
mod_unixd.c
поэтому mod_headers.c
все еще не существует .. Что я здесь делаю не так?
a2enmod
активирует динамически загружаемый модуль. apache2 -l
перечисляет только модули, статически скомпилированные в двоичный файл apache2.
man apache2
показывает:
-l Output a list of modules compiled into the server.
This will not list dynamically loaded modules
included using the LoadModule directive.
Вы можете перечислить все модули следующим образом:
apachectl -t -D DUMP_MODULES
Если модуль загружен, вывод должен включать следующую строку:
headers_module (shared)