![绕过 web.config 中某些路径的 OnAuthenticateRequest](https://linux22.com/image/525936/%E7%BB%95%E8%BF%87%20web.config%20%E4%B8%AD%E6%9F%90%E4%BA%9B%E8%B7%AF%E5%BE%84%E7%9A%84%20OnAuthenticateRequest.png)
我们有一个网络应用程序,它基本上捕获所有用于 URL 重写的请求,但某个子目录 (/static) 除外,它有自己的 web.config(不是子应用程序!),它为所有文件定义了一个 StaticFileModule。
但是,由于它是同一个 HttpApplication,所有事件仍然会针对这些请求触发,包括 OnAuthenticateRequest,这对我们来说有点问题。
我想知道我是否可以在 web.config 中配置任何内容以使其绕过事件链或链中的某些事件(我一直在研究但无济于事),或者完全将子目录与根应用程序分离(最好不将子目录配置为应用程序)?
到目前为止,我已经在 OnAuthenticateRequest 中使用了一个特殊情况来绕过它,但我想将它包含到子目录本身中(不需要维护代码以拥有静态目录)。
这可能也属于 stackoverflow。
答案1
在 /static 目录的 web.config 中,在 system.webServer/modules/ XML 路径中,您应该能够使用“remove”元素删除仅针对 /static 目录的身份验证模块,如所述在本文档中。