我正在尝试删除公开 IIS 版本但无法删除的服务器标头。我将 IIS Express 10 与 ASP.NET Core 3.0 一起使用,并开发了一个 Web API。我尝试了以下选项,但响应中仍然存在标头并显示版本 IIS 10.0。
将 HTTP 参数中的注册表项“DisableServerHeader”更改为 1。它只删除了 http.sys 模块的服务器标头,而不是 IIS 版本。
在<system.webServer>标签内的 applicationhost.config 文件中使用以下代码
<rewrite>
<outboundRules rewriteBeforeCache="true">
<rule name="Remove Server header">
<match serverVariable="RESPONSE_Server" pattern=".+" />
<action type="Rewrite" value="" />
</rule>
</outboundRules>
</rewrite>
小智 25
已经有很多好的答案,但我想为像我这样喜欢使用 Windows GUI IIS 管理控制台“Internet 信息服务 (IIS) 管理器”和附带的“配置编辑器”的用户展示一种不同的方法。
您还可以避免由于配置文件格式错误而导致 IIS 崩溃,正如一位评论者所发生的情况。“配置编辑器”将为您应用 IIS 配置文件中的更改。此外,您可以根据需要全局或按站点方式设置这些设置,而无需手动编辑文件或应用 Powershell/cmd 命令。
打开“Internet 信息服务 (IIS) 管理器”。
如果您想全局设置,请单击您的主服务器节点:

打开“配置编辑器”

要删除x-aspnet-version响应标头,请转到system.web >> httpRuntime >> enableVersionHeader并将其设置为false

要删除 IISserver响应标头,请转至system.webServer >> security >> requestFiltering >> removeServerHeader并将其设置为true

要设置每个站点的值,只需单击要应用更改的站点,然后从那里选择配置编辑器。
我在这个站点上测试了这个技巧,它在IIS 10上运行良好。
简单web.config:
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<system.webServer>
<security>
<requestFiltering removeServerHeader="true" />
</security>
</system.webServer>
</configuration>
Run Code Online (Sandbox Code Playgroud)
小智 8
以管理员身份运行:
%systemroot%\system32\inetsrv\appcmd.exe set config -section:system.webServer/security/requestFiltering /removeServerHeader:"True" /commit:apphost
Run Code Online (Sandbox Code Playgroud)
我记得我已经看到这在 IIS10 中是可能的,事实上我在IIS 10 中的新功能中对此进行了博客讨论。
有一个新removeServerHeader设置,但它在 GUI 中不可用,您必须使用配置编辑器或使用 PowerShell:
Set-WebConfigurationProperty -pspath 'MACHINE/WEBROOT/APPHOST' -filter "system.webServer/security/requestFiltering" -name "removeServerHeader" -value "True"
Run Code Online (Sandbox Code Playgroud)
对于整个服务器,如果您只需要一个站点,请使用:
Set-WebConfigurationProperty -pspath 'MACHINE/WEBROOT/APPHOST/Default Web Site' -filter "system.webServer/security/requestFiltering" -name "removeServerHeader" -value "True"
Run Code Online (Sandbox Code Playgroud)
这对我来说似乎工作得很好,不需要重新启动或重新启动 IIS。
http.sys在响应请求的极少数情况下,它不会影响服务器标头。
| 归档时间: |
|
| 查看次数: |
16247 次 |
| 最近记录: |