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()); }
下一篇: RabbitMQ客户端开发向导