Как сопоставить корневой URL-адрес в приложении ASP.NET ?

StackOverflow https://stackoverflow.com/questions/843295

  •  20-08-2019
  •  | 
  •  

Вопрос

У меня есть следующее в моем Web.config:

<httpHandlers>
    . . .
    <add verb="GET,HEAD" path="/" type="Vis.Web.BootHandler, Vis" />
</httpHandlers>

Этот HTTP-обработчик возвращает статическую HTML-страницу, просто чтобы посмотреть, работает ли она.

Теперь, когда я запускаю свое веб-приложение (у которого нет Default.aspx или подобных) Вместо этого я получаю список каталогов по умолчанию.Когда я меняю путь на "/foo" это работает совершенно нормально.

Я пытался "" что касается пути, то он также выдает список каталогов.То же самое, имея это как "/foo" а затем добавляем сопоставление URL-адресов для "", "~", "~/" и "/"

Как мне обработать веб-корень / переопределить список каталогов с помощью HTTP-обработчика?

Это было полезно?

Решение

ОБНОВЛЕННЫЙ:Что касается комментария Это не может быть сделано на сервере разработки, так как для этого требуется функция IIS.

ОРИГИНАЛ: Вам нужно добавить сопоставление приложений с шаблоном в asp.net DLL, чтобы все запросы (даже к каталогам) выполнялись через среду выполнения .net и, следовательно, ваш HTTP-обработчик.

Проверьте http://www.microsoft.com/technet/prodtechnol/windowsserver2003/library/IIS/5c5ae5e0-f4f9-44b0-a743-f4c3a5ff68ec.mspx

для получения дополнительной информации

Другие советы

В дополнение к тому, что сказал @Greg B, вам нужно будет добавить фиктивную страницу default.aspx и зарегистрировать свой обработчик, используя /* path:

<httpHandlers>
    . . .
    <add verb="GET,HEAD" path="/*" type="Vis.Web.BootHandler, Vis" />
</httpHandlers>
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top