首页 > 解决方案 > 如何删除服务器标头 .NET Core Blazor 应用程序

问题描述

我尝试了很多东西,但都没有奏效……有没有一种简单的方法可以删除标头中的服务器名称? 在此处输入图像描述

我在 Blazor 服务器端环境 IIS 8.5 中工作

我创建了一个 web.config 并尝试使用 -> requestFiltering removeServerHeader="true" 标签 在此处输入图像描述

但随后无法访问网络应用程序,我收到“500 - 内部服务器错误”。

我尝试使用 nuget NWebsec 中间件包并添加到 program.cs:“webBuilder.UseKestrel(options => options.AddServerHeader = false);” 在此处输入图像描述

没有任何作用...

标签: security.net-coreheaderblazor

解决方案


我找到了解决方案:

  1. 使用 Visual Studio 在您的项目中添加 web.config 文件(添加项目,搜索 Web 配置)。

  2. 在 webconfig 文件中添加“aspNetcore”标记之后和“system.webserver”结束标记之前的那些行:

    <rewrite>
         <outboundRules>
             <rule name="Remove Server Response Header">
                 <match serverVariable="RESPONSE_SERVER" pattern=".*" />
                 <action type="Rewrite" />
             </rule>
         </outboundRules>
     </rewrite>
    

注意:你假设你的 IIS 上已经安装了 re write 扩展


推荐阅读