В моем приложении есть настраиваемый HTTPModule для обработки удобных URL-адресов. А вот и раздел модулей файла 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.
Я нашел еще один вопрос, связанный с этим, и предоставленное решение заключалось в использовании одного из конкретных тегов конфигурации .Net 4 в файле web.config. На данный момент я не могу перейти на .Net 4. Итак, я ищу другое решение. Какие-либо предложения?