简体   繁体   English

如何使用Powershell从http响应中删除IIS“服务器”标头?

[英]How do I remove IIS 'server' header from http response using Powershell?

In HTTP response I see some server headers that I need to filter at IIS level using Powershell. 在HTTP响应中,我需要使用Powershell在IIS级别上过滤一些服务器标头。 I know how to remove custom headers but I can't find a way to remove server headers. 我知道如何删除自定义标头,但是找不到删除服务器标头的方法。

Headers that I see in response.. Server type : XXXXXX Server version : XXXXXX Source : XXXXX Additional data : XXXXXX 我在响应中看到的标头。服务器类型:XXXXXX服务器版本:XXXXXX源:XXXXX其他数据:XXXXXX

This post explains how to remove custom headers and it works for me but I can't seem to find a way to rmeove server headers using powershell. 这篇文章解释了如何删除自定义标头,它对我有用,但是我似乎找不到使用Powershell rmeove服务器标头的方法。 How do I remove IIS custom header using Powershell? 如何使用Powershell删除IIS自定义标头?

Accoding to your description, I suggest you could try to use below powershell command to remove the IIS http response server header: 根据您的描述,建议您尝试使用以下powershell命令删除IIS http响应服务器标头:

Set-WebConfigurationProperty -pspath 'MACHINE/WEBROOT/APPHOST/Default Web Site'  -filter "system.webServer/security/requestFiltering" -name "removeServerHeader" -value "True"
Set-WebConfigurationProperty -pspath 'MACHINE/WEBROOT/APPHOST'  -filter "system.webServer/security/requestFiltering" -name "removeServerHeader" -value "True"

Notice: 注意:

The first being for the Default Web Site and the second will remove it from all web sites running on the server. 第一个用于默认网站,第二个用于从服务器上运行的所有网站中将其删除。

This is only worked from IIS10. 这仅在IIS10中有效。 If you use IIS8 or below, you could only use url rewrite to achieve your requirement. 如果使用IIS8或更低版本,则只能使用url重写来满足您的要求。

Result: 结果:

在此处输入图片说明

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM