对您最常用的 ASP.NET httpmodules 的描述感兴趣,这些 httpmodules 解决了您的 webapp 的特定问题。
欢迎使用最佳实践和现场使用。
8 回答
ELMAH对于 ASP.NET 应用程序中的异常日志记录非常流行和有用。
使用了一个模块来检查给定用户的授权。因此,当请求任何资源时,它会检查用户是否有权访问它,如果没有,它会将用户带到友好的页面。
ACL 可以在 Authz DB 或 xml 文件中,并使用角色进行区分。
MBCompression:用于压缩 Css 文件、JavaScript 文件、页面和 WebResource.axd 的处理程序和模块。
我在无法完全控制服务器且无法进行本地 IIS 压缩的环境中使用它。
当您无权访问服务器的操作系统时运行后台服务(在共享主机环境中就是这种情况)。
我有一个 SSL 模块,它检查被请求的页面是否需要通过 SSL 访问,并相应地重定向。必须通过 SSL 连接访问的页面或文件夹列表存储在 XML 文件中。当通过 SSL 请求不需要的页面时,模块会将它们重定向到非 SSL 版本,反之亦然。
一个 HttpModule,它通过将人类可读的 URL 转换为程序在每个请求的幕后使用的 URL 来支持友好的 URL。它还驱动我的 CMS。
对我来说,最常用的 http 模块是表单身份验证模块。
我们用它来保护我们使用的几乎每个网站。
我使用了一套 http 模块和 http 处理程序:
http://code.google.com/p/talifun-web/
静态文件处理程序
一个 http 处理程序,它将以缓存、压缩和可恢复的方式提供静态文件。
它生成一致的 etag 和正确的元标记,用于在代理和本地缓存。当您无法控制网络服务器的配置时,这尤其有用。
它还可以绕过硬盘驱动器从内存中提供缓存请求和压缩缓存请求。
它支持以下 http 标头标签:
- 接受范围
- 电子标签
- 过期
- 最后修改
- 范围
- 如果范围
- 如果匹配
- 如果无匹配
- If-Modified-Since
- If-Unmodified-Since
- 除非-修改-自
破碎机模块
将 js 压缩成单个文件,并将 css 压缩成单个文件的模块。
它还监视任何被监视的 css 或 js 文件的更改并重新生成粉碎的文件。它为粉碎的文件生成一个唯一的哈希,并将其附加到 css url 和 js url。因此,无论缓存如何,您都可以确保获得正确的内容。
CssSpriteModule
将组件图像组合成单个精灵图像文件并生成将精灵图像切割成其组件图像所需的css精灵文件的模块。
RegexUrlAuthorizationModule
基于匹配正则表达式的 url 提供授权的模块。
日志网址模块
一个非常简单的模块,可以轻松挂钩匹配正则表达式的 Web 请求。
页面压缩模块
为 webforms 和 mvc 压缩动态页面的模块。