我的应用程序有一个用于处理友好 URL 的自定义 HTTPModule。这是 web.config 文件的模块部分。
<modules>
<remove name="ScriptModule"/>
<remove name="Session"/>
<add name="Session" type="System.Web.SessionState.SessionStateModule" preCondition=""/>
<add name="NHibernateSessionModule" type="MyApp.Core.NHibernateBase.NHibernateSessionModule"/>
<add name="ApplicationModule" type="MyApp.ApplicationModule"/>
<add name="URLDispatcher" type="MyApp.URLDispatcher"/>
<add name="ScriptModule" preCondition="managedHandler" type="System.Web.Handlers.ScriptModule, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
</modules>
该模块还具有处理错误页面的逻辑。我现在遇到的问题是,当请求的 url 以 '.' 结尾时 发送到服务器,我的模块都没有被触发,用户看到默认的 asp.net 404 页面。
不确定发生了什么以及如何将用户重定向到我的自定义 404 页面。
我确实找到了与此相关的另一个问题,提供的解决方案是使用 web.config 文件中的 .Net 4 特定配置标签之一。目前我无法迁移到 .Net 4。所以,我正在寻找不同的解决方案。有什么建议么?