Мне нужно удалить заголовок «Сервер» из всех HTTP-запросов, поступающих на мой сайт IIS, из-за ограничений сканирования PCI DSS. Я использую последнюю версию Windows Server 2016 с последней версией IIS 10. Роль фильтрации запросов IIS установлена в разделе «Роли и компоненты».
Мой файл конфигурации выглядит так:
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<system.webServer>
<security>
<requestFiltering removeServerHeader="true" />
</security>
</system.webServer>
</configuration>
Я обслуживаю статический файл, для целей этого теста он называется index.html
и содержит <html></html>
.
После создания файла конфигурации, перезапуска IIS и запроса файла IIS по-прежнему отправляет заголовок сервера:
Единственный известный мне другой способ - это установить модуль перезаписи IIS, однако это крайне нежелательно, поскольку мы запускаем ферму серверов, и это необходимо сделать для нескольких серверов и образов серверов.
Можно ли еще что-нибудь попробовать, чтобы фильтрация запросов работала?
Есть ли другой способ удалить заголовок сервера, который не требует перезаписи IIS?
P.S. Я могу воспроизвести это на нескольких серверах, создав новый сайт в IIS и создав индексный файл и веб-конфигурацию, как указано выше - мне кажется, что я упускаю что-то очевидное.