我有一个 HTTP 模块,可以根据它们的内容类型标头清理、压缩和缩小 CSS、JS 和 HTML 文件。它在我的暂存环境和本地主机(ISS7,经典管道模式)中运行良好。在 IIS 6(生产)上,它不可靠。偶尔,asp.net 会停止处理此静态文件,并且似乎正在恢复为默认的 IIS 处理程序。如果我触摸 web.config 或执行 IISRESET,它将再次开始正常工作一段时间。即使模块进入这种“古怪状态”,.aspx 文件仍按预期在模块中运行。所以,我相当确定模块不是问题,我们正在查看的是 IIS 问题。
- 我在 IIS 6 中映射了 HTML、JS 和 CSS 文件,由 aspnet_isapi.dll 处理所有动词。
- 在我的 web.config 中,我已将这些静态文件设置为由处理程序部分中的 System.Web.StaticFileHandler 处理,也适用于所有动词。
- HTTP 模块也连接在 web.config 中。
有任何想法吗?我想暂时避免将我的生产 Web 服务器升级到 IIS 7!