ASP.NET MVC 项目设置,移除多余的响应头,woff,…

2018-09-18 06:54:25来源:博客园 阅读 ()

新老客户大回馈,云服务器低至5折

移除 X-AspNetMvc-Version

在 Global.asax 的 Application_Start添加代码 

MvcHandler.DisableMvcResponseHeader = true; 

移除 X-AspNet-Version

在 web.config 下的 system.web 节点下设置 enableVersionHeader=false

<httpRuntime targetFramework="4.5" enableVersionHeader="false" />

移除 X-Powered-By

在 web.config 下的 system.webServer 添加 一下代码

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

 

移除 Server

有两种方式,以下方式任选其中一个。

1. 在 global.asax 重写 Application_PreSendRequestHeaders 方法

protected void Applcation_PreSendRequestHeaders(object sender, EventArgs e)
        {
            var application = sender as HttpApplication;
            if (application != null && application.Context != null)
            {
                application.Context.Response.Headers.Remove("Server");
                //application.Context.Response.Headers.Set("Server", "MY Server");
            }
        }

2. 新建一个 HttpMoudle 来处理

public class SiteHeaderMoudle : IHttpModule
    {
        public void Dispose()
        {
        }

        public void Init(HttpApplication context)
        {
            context.PreSendRequestHeaders += context_PreSendRequestHeaders;
        }

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

然后再 webconfig 文件中注册

<system.webServer>
    <httpProtocol>
      <customHeaders>
        <remove name="X-Powered-By" />
      </customHeaders>
    </httpProtocol>
    <modules runAllManagedModulesForAllRequests="true">
      <add name="SiteHeaderMoudle" type="MY.web.Extended.SiteHeaderMoudle"/>  // 注意类的命名空间
    </modules>
    <staticContent>
      <!--修复浏览器访问bootstrap以下后缀的字体notfound错误-->
      <remove fileExtension=".woff" />
      <mimeMap fileExtension=".woff" mimeType="application/font-woff" />
      <remove fileExtension=".woff2" />
      <mimeMap fileExtension=".woff2" mimeType="application/font-woff2" />
    </staticContent>
  </system.webServer>

其他设置,只保留 Razor 视图引擎

protected void Application_Start()
        {
            // Removing all the view engines
            ViewEngines.Engines.Clear();
            //Add Razor Engine (which we are using)
            ViewEngines.Engines.Add(new RazorViewEngine());
        }

 

参考文章

http://www.cnblogs.com/CareySon/archive/2009/12/14/1623624.html

https://blogs.technet.microsoft.com/stefan_gossner/2008/03/12/iis-7-how-to-send-a-custom-server-http-header/

 

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇:阿里云oss服务通用类

下一篇:浅谈MemCahe