ASP.NET:您最常用的httpmodules

时间:2009-02-07 15:47:10

标签: c# asp.net .net windows httpmodule

对解决您的webapp特定问题的最常用的ASP.NET httpmodules的描述感兴趣 欢迎提供最佳实践和现场使用。

8 个答案:

答案 0 :(得分:10)

ELMAH非常受欢迎,可用于ASP.NET应用程序中的异常日志记录。

答案 1 :(得分:6)

使用了检查给定用户授权的模块。因此,当请求任何资源时,它会检查用户是否有权访问它,如果没有,则会将用户带到友好页面。

ACL可以在Authz DB或xml文件中,并使用角色进行区分。

答案 2 :(得分:6)

MBCompression:用于压缩Css文件,JavaScript文件,页面和WebResource.axd的处理程序和模块。

我在没有完全控制服务器的环境中使用它,并且无法进行本机IIS压缩。

答案 3 :(得分:3)

Run a background service当您无法访问服务器的操作系统时(如共享托管环境中的情况)。

答案 4 :(得分:3)

我有一个SSL模块,用于检查是否需要通过SSL访问所请求的页面,并相应地重定向。必须通过SSL连接访问的页面或文件夹列表存储在XML文件中。当通过SSL请求页面不需要时,模块会将它们重定向到非SSL版本,反之亦然。

答案 5 :(得分:1)

一个HttpModule,它通过将人类可读的URL转换为程序在每个请求的幕后使用的URL来支持友好的URL。它也驱动我的CMS。

答案 6 :(得分:1)

对我来说,最常用的http模块是表单身份验证模块。

我们使用它来保护我们使用的每个网站。

答案 7 :(得分:1)

我使用一套http模块和http处理程序:

http://code.google.com/p/talifun-web/

<强> StaticFileHandler

一个http处理程序,它将以缓存,压缩和可恢复的方式提供静态文件。

它生成一致的etags和正确的元标记,用于在代理和本地缓存。当您无法控制Web服务器的配置时,这尤其有用。

它还可以绕过硬盘驱动器从内存中提供缓存请求和压缩缓存请求。

它支持以下http标头标记:

  • 接受-范围
  • 的ETag
  • 到期
  • 上次修改
  • 范围
  • 如果-范围
  • 如果-匹配
  • 如果-无 - 匹配
  • 如果-Modified-Since的
  • 如果未改性的-由于
  • 除非 - 修改 - 自

<强> CrusherModule

将js压缩为单个文件并将css压缩为单个文件的模块。

它还会监视任何已观看的css或js文件的更改,并重新生成已压碎的文件。它为压碎文件生成一个唯一的哈希值,并将其附加到css url和js url。因此无论缓存如何,始终确保为您提供正确的内容。

<强> CssSpriteModule

一个模块,它将组件图像组合成一个精灵图像文件,并生成将精灵图像剪切成组件图像所需的css精灵文件。

<强> RegexUrlAuthorizationModule

基于匹配正则表达式的网址提供授权的模块。

<强> LogUrlModule

一个非常简单的模块,可以轻松挂钩与正则表达式匹配的Web请求。

<强> PageCompressionModule

用于压缩webforms和mvc的动态页面的模块。