Ни HttpHandler, ни HttpApplication не вызываются для /

У меня есть IHttpHandler, зарегистрированный следующим образом:

    <httpHandlers>
        <add verb="*" path="*" type="MindTouch.Dream.Http.HttpHandler, mindtouch.core"/>
    </httpHandlers>

Который ловит /foo, /foo/bar и т. д. просто отлично, но на / встроенный сервер Visual Studio не попадает ни в HttpApplication, ни в мой обработчик.


person Arne Claassen    schedule 08.10.2010    source источник


Ответы (2)


Вот как это сделать. Ваш веб-сервер/сайт будет иметь параметр, определяющий документ по умолчанию для каталога. Если он отсутствует или не установлен, веб-сервер попытается обслужить либо список каталогов, который следует отключить из соображений безопасности, либо ошибку безопасности, если список недоступен, либо ничего.

Таким образом, в вашем случае до того, как существовал документ по умолчанию, «/» фактически не делал запрос приложения.

person ulty4life    schedule 08.10.2010

Я исправил это и, кажется, помню, что это была древняя проблема ASP.NET:

Я создал файл с именем Default.htm, к которому ASP.NET попытается разрешить путь /, и, поскольку теперь есть реальный путь для разрешения, вызывается HttpApplication, кстати, с путем /default.htm.

Есть ли менее хакерское решение для этого? С удовольствием принял бы другой ответ, чем мой собственный :)

person Arne Claassen    schedule 08.10.2010