Установка заголовков в httpd.conf не установка заголовков в .htaccess - PullRequest
0 голосов
/ 23 ноября 2018

У меня есть любопытная проблема:

У меня есть несколько заголовков, которые одинаковы для каждого веб-сайта на сервере.Я думаю, " это можно установить только один раз в httpd.conf, чтобы сохранить запись в кучу .htaccess каждый раз, когда добавляется / изменяется новый. "

Таквот что я делаю;

В httpd.conf файле до виртуальных хостов Я установил:

<IfModule mod_headers.c>
  <Directory '/'>
Header always set Feature-Policy "accelerometer 'none'; camera 'none'; geolocation 'none'; gyroscope 'none'; magnetometer 'none'; microphone 'none'; payment 'none'; usb 'none'"
Header always set Cache-Control no-cache,must-revalidate
Header always set X-Clacks-Overhead "GNU Terry Pratchett"
Header always set X-XSS-Protection 1;mode=block
Header always set X-Content-Type-Options nosniff
Header always set X-Frame-Options SAMEORIGIN
Header always set Content-Language en
Header always set Referrer-Policy origin-when-cross-origin
Header unset Last-Modified
Header unset X-Powered-By
Header always set Strict-Transport-Security "max-age=31536000;" "expr=%{HTTPS} == 'on'"
Header always set Expect-CT enforce,max-age=2592000
  </Directory>
</IfModule>

Однако после этого и перезапуска Apache (версия 2.4.37)Я считаю, что дополнительные или отредактированные Header инструкции в .htaccess не отправляются.

Например;каждая учетная запись имеет свою собственную политику CSP, и это отражено в файле public_html/.htaccess учетной записи:

пример:

Header set Content-Security-Policy "upgrade-insecure-requests; default-src 'self' https:;"

Но когда заголовки читаются любымБраузер, полученные заголовки - это только заголовки из httpd.conf, и никакие дополнительные или измененные заголовки не отображаются из .htaccess.

Я не могу понять, почему это так?

Что я пробовал

  • Я обернул заголовки в операторы .htaccess в квалификаторе <IfModule ...>.
  • Я использовал разные браузеры для принудительной установки apacheчтобы перечитать файлы .htaccess.
  • Я прочитал Google и не могу найти упоминаний о путанице httpd.conf с чтением заголовков htaccess.
  • Остальные части файлов .Htaccess читаются нормально.

Примечания

  • Apache версии 2.4.37
  • Все эти заголовки работают в .htaccess до вышеуказанных изменений.Насколько я могу судить, это не Синтаксис заголовка.

Любая помощь с благодарностью получена.

1 Ответ

0 голосов
/ 26 ноября 2018

После долгих исследований я обнаружил, что причина этого состояла в том, что PHP запускался через обработчик CGI.Изменение на suphp обработчик немедленно решило эту проблему.

Пожалуйста, посмотрите этот вопрос / ответ и этот ответ .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...