В службе удаленного взаимодействия .Net, размещенной в IIS 7.5, как удалить заголовок ответа формы тега "Сервер: IIS/7.5"

У меня есть приложение.Net, которое использует удаленное взаимодействие spring.net для предоставления услуг удаленного взаимодействия через IIS 7.5. По соображениям безопасности я хочу удалить некоторую информацию, такую ​​как "Сервер: IIS/7.5" из заголовка ответа HTTP. Я легко удалил другие теги, такие как X-Powered-By, но для тега Server я попробовал все предлагаемые решения в Интернете, и ни одно из них не сработало. Я попытался установить раздел реестра DisableServerHeader или установить инструменты URLrewrite и изменить свой web.config и добавить outboundRule или любое другое решение для кодирования, например добавление настраиваемого модуля HTTP или обработку preRequestHandling контекста http в моем файле global.asax. но ни один из них у меня не работал. в принципе, можно ли удалить это значение Server из заголовка ответа, учитывая, что я использую удаленное взаимодействие.net 3.5 и.net поверх IIS 7.5? Я должен упомянуть, что этот тег 'Значение s станет пустым, если я просматриваю любые страницы, которые я поместил в каталог хоста, но для моих запросов удаленного взаимодействия.Net он не работает, а значение тега сервера в HTTP-заголовке ответа по-прежнему равно IIS/7.5

1 ответ

К сожалению, вы не можете удалить заголовок Server. Но вы можете переписать его содержимое и очистить его. В IIS 7+ (IIS 7, 8.5, 8.0, 8.5, IIS 10.0) используйте правило перезаписи исходящего трафика, чтобы удалить информацию о версии веб-сервера из ответа заголовка Server:.

Вы можете использовать следующее правило исходящей перезаписи URL:

<rewrite>    
  <outboundRules rewriteBeforeCache="true">
    <rule name="Remove Server header">
      <match serverVariable="RESPONSE_Server" pattern=".+" />
      <action type="Rewrite" value="" />
    </rule>
  </outboundRules>
</rewrite>

Другие вопросы по тегам