Документ по умолчанию не пытается использовать все файлы в iis 8.5

У меня есть веб-сайт с настройками по умолчанию для документа по умолчанию в IIS 8.5 Windows 2012 R2.

<system.webServer>
  <defaultDocument enabled="true">
    <files>
      <add value="Default.aspx" />
      <add value="Default.htm" />
      <add value="Default.asp" />
      <add value="index.htm" />
      <add value="index.html" />
      <add value="iisstart.htm" />
    </files>
  </defaultDocument>
</system.webServer>

Когда я перехожу по URL-адресу без имени файла (mysite.com/Content/), IIS будет пытаться использовать только файл default.aspx и никакие другие файлы в списке (index.html). IIS пытается загрузить default.aspx, и я получаю 404. Странно то, что в этом каталоге нет файла default.aspx, а index.html существует. Если я перехожу непосредственно к index.html, страница отображается правильно. Согласно документации Microsoft по документу по умолчанию следует попробовать следующий файл в списке пока не найдет тот, который существует.

Я явно добавил файл web.config в подкаталог с

<defaultDocument enabled="true">
  <files>
      <clear />
       <add value="index.html" />
   </files>
 </defaultDocument>

и IIS все еще пытается использовать default.aspx. Кто-нибудь сталкивался с этим раньше? Есть ли у вас какие-либо предложения относительно того, почему это не работает, как задокументировано?


person Allan    schedule 04.05.2015    source источник
comment
Вы пытались сбросить IIS после сброса настроек?   -  person Amnesh Goel    schedule 11.05.2015
comment
у вас настроена маршрутизация?   -  person Ewan    schedule 11.05.2015
comment
Установлены ли какие-то специальные модули/обработчики?   -  person haim770    schedule 11.05.2015
comment
Может проблема с разрешением? Проблема с разрешенными/запрещенными расширениями? ASP.NET отменяет ваши настройки?   -  person Ondrej Tucny    schedule 11.05.2015
comment
Да - сделал сброс IIs. Маршрутизация не настроена — установлен старый модуль перезаписи URL с одним правилом (не связанным).   -  person Allan    schedule 11.05.2015
comment
В качестве эксперимента - если вы переместите файл .html в начало списка - он найдет файл?   -  person Allan S. Hansen    schedule 11.05.2015
comment
Вы пытались удалить/отключить старый модуль перезаписи URL? (временно)   -  person tgolisch    schedule 11.05.2015
comment
Аутентификация? Должен ли пользователь авторизоваться? (возможно, отсутствует страница входа)   -  person tgolisch    schedule 11.05.2015
comment
@tgolisch - хороший. Удалил, теперь работает...   -  person Allan    schedule 11.05.2015


Ответы (4)


  1. Попробуйте удалить/отключить старый модуль перезаписи URL? (временно)
  2. Если вам требуется аутентификация, убедитесь, что страница входа существует.

(другие предложения, скопированные выше, которые я включил, на случай, если кто-то еще прочитает этот вопрос)

  1. Проверьте наличие какой-либо маршрутизации в исходном коде.
  2. Проверьте любые специальные модули или обработчики, которые могут вызывать перенаправления или перехват вызовов.
person tgolisch    schedule 11.05.2015
comment
Если вы хотите использовать index.html в качестве страницы по умолчанию. вам нужно щелкнуть веб-сайт iis и щелкнуть документ по умолчанию, добавить index.html в качестве документа по умолчанию. - person Rohit Khurana; 11.05.2015

Один из способов заставить директиву документа по умолчанию работать: Перейти к IIS/пулам приложений. Измените «Режим управляемого конвейера» на классический режим вместо интегрированного режима. Это сработало для меня.

person Zeni    schedule 27.05.2016

Если вы отключите документы по умолчанию, но включите просмотр каталогов, IIS вернет список каталогов, когда запрос корневого каталога поступает от браузера. Если вы отключите как документы по умолчанию, так и просмотр каталогов, IIS отправляет в браузер ошибку «Файл HTTP 404 не существует».

Поэтому, пожалуйста, включите параметр документов по умолчанию в IIS и перезагрузите IIS.

person Niraj    schedule 11.05.2015

Если вы хотите использовать index.html в качестве страницы по умолчанию. вам нужно щелкнуть веб-сайт iis по умолчанию, после чего вы можете щелкнуть документ по умолчанию. В настоящее время! вы можете добавить индекс как страницу по умолчанию.

person Rohit Khurana    schedule 11.05.2015
comment
Как видно из примеров конфигурации, которые я разместил в исходном вопросе ‹defaultDocument enabled=true› и ‹add value=index.html /› - person Allan; 12.05.2015