加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

asp.net – 为什么不删除Server和X-Powered-By标头?

发布时间:2020-12-16 03:28:13 所属栏目:asp.Net 来源:网络整理
导读:我的ASP.NET 4.5应用程序正在部署到共享主机,因此我无法访问IIS设置.要删除X-Powered-By标头,我在web.config中指定: system.webServer httpProtocol customHeaders remove name="X-Powered-By" / /customHeaders /httpProtocol/system.webServer 要删除Serv
我的ASP.NET 4.5应用程序正在部署到共享主机,因此我无法访问IIS设置.要删除X-Powered-By标头,我在web.config中指定:

<system.webServer>
  <httpProtocol>
    <customHeaders>
      <remove name="X-Powered-By" />
    </customHeaders>
  </httpProtocol>
</system.webServer>

要删除Server标头,我在Global.asax中指定:

protected void Application_PreSendRequestHeaders(object sender,EventArgs e) {
  HttpContext.Current.Response.Headers.Remove("Server");
}

但是,响应仍包含两个标头:

Cache-Control:private
Content-Encoding:deflate
Content-Length:672
Content-Type:text/html; charset=utf-8
Date:Sun,06 Jan 2013 00:41:20 GMT
Server:Microsoft-IIS/7.5
X-Powered-By:ARR/2.5
X-Powered-By:ASP.NET

我该如何删除它们?

解决方法

我不知道为什么你的X-技术 – 通过不被删除,但在今年早些时候一个Windows更新修补程序作出如此的Application_PreSendRequestHeaders修复不再删除服务器:头我们.

我们必须使用IIS URL Rewrite Module 2在我们的system.webServer块(在Web.config中)添加一个部分:

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

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读