欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

ASP.NET MVC 项目设置,移除多余的响应头,woff,woff2 字体文件请求处理

程序员文章站 2022-05-13 23:35:07
移除 X-AspNetMvc-Version 在 Global.asax 的 Application_Start添加代码 移除 X-AspNet-Version 在 web.config 下的 system.web 节点下设置 enableVersionHeader=false 移除 X-Power ......

移除 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());
        }