ASP.NET管道优化
位于请求管道中的很多ASP.NET默认的HttpModules用于拦截客户端所发出的每个请求。例如,SessionStateModule拦截每个请求,并解析对应的会话cookie,然后在HttpContext中加载适当的会话。实时证明,并不是所有的modules都是必要的。
例如,如果你不使用Membership和Profile provider提供程序,那么你就可以不需要FormsAuthentication module。如果你需要为你的用户使用Windows验证,那么你就可以不需要WindowsAuthentication。位于管道中的这些 modules仅仅在每次请求到来时执行一些不必要的代码。
默认的modules都定义在了machine.config文件中(位于$WINDOWS$\Microsoft.NET\Framework\$VERSION$\CONFIG目录下)。
- <httpModules>
-
<add name="OutputCache" type="System.Web.Caching.OutputCacheModule" />
-
<add name="Session" type="System.Web.SessionState.SessionStateModule" />
-
<add name="WindowsAuthentication"
-
type="System.Web.Security.WindowsAuthenticationModule" />
-
<add name="FormsAuthentication"
-
type="System.Web.Security.FormsAuthenticationModule" />
-
<add name="PassportAuthentication"
-
type="System.Web.Security.PassportAuthenticationModule" />
-
<add name="UrlAuthorization" type="System.Web.Security.UrlAuthorizationModule" />
-
<add name="FileAuthorization" type="System.Web.Security.FileAuthorizationModule" />
-
<add name="ErrorHandlerModule" type="System.Web.Mobile.ErrorHandlerModule,
-
System.Web.Mobile, Version=1.0.5000.0,
-
Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
-
</httpModules>
你可以通过在站点的web.config文件中添加<remove>节点到你的网站应用程序中来删除这些默认的modules。ASP.NET管道优化代码例如:
- <httpModules>
-
-
<remove name="Session" />
-
<remove name="WindowsAuthentication" />
-
<remove name="PassportAuthentication" />
-
<remove name="AnonymousIdentification" />
-
<remove name="UrlAuthorization" />
-
<remove name="FileAuthorization" />
-
</httpModules>
上面的配置对于使用了数据库并基于Forms验证的网站来说非常适合,它们并不需要任何会话的支持。因此,所有这些modules都可以安全的删除。以上介绍ASP.NET管道优化
分享到:
相关推荐
ASP.NET Core 2.0 是一个高性能、模块化且跨平台的框架,用于构建Web应用程序。在ASP.NET Core中,中间件是处理HTTP请求和响应的核心组件,它们按顺序执行,形成一个请求管道。本文将深入探讨如何在ASP.NET Core 2.0...
首先,让我们来看看如何创建最简单的ASP.NET Core中间件。在Visual Studio中,你可以创建一个ASP.NET Core 2.0的空项目。在`Startup.cs`文件中,你会看到`Configure`方法。这个方法中,`IApplicationBuilder`对象...
前言 本篇文章是我们在开发自己的项目中实际使用的,比较贴合实际应用,算是对中间件的一个深入使用了,不是简单的Hello World。...asp.net core 提供了IApplicationBuilder接口来让把中间件注册到asp.net的管道请
ASP.NET Core 2.0 中间件是构建高效、可扩展Web应用的关键组成部分。中间件在请求和响应之间起到处理和转发的作用,允许开发者按需构建自定义的处理逻辑。本文将深入探讨ASP.NET Core 2.0 中间件的创建和使用方法。 ...
*** Core 2.0中间件技术是构建Web应用程序的核心组件之一,它允许我们在请求处理管道中插入自定义逻辑。在*** Core 2.0中,中间件可以带有初始参数,这使得中间件变得更加灵活和可重用。本文将详细介绍如何在*** ...