Как заставить ASP.NET MVC работать в IIS 6?

Я установил .NET Framework 3.5 SP1 и ASP.NET MVC CTP в Windows Server 2003 R2, но мой сайт ASP.NET MVC по-прежнему не работает на этом сервере. Я искал решение в Интернете и IIS и заметил, что не могу выбрать другую версию .NET Framework, кроме 2.0, для своих виртуальных каталогов. Я почти уверен, что если я исправлю это, то смогу заставить мой сайт работать там.

В настоящее время основной URL-адрес "/" отвечает следующим образом:

Directory Listing Denied
This Virtual Directory does not allow contents to be listed.

И URL-адрес "/Default.aspx" отвечает следующим образом:

Configuration Error
Description: An error occurred during the processing of a configuration file required to service this request. Please review the specific error details below and modify your configuration file appropriately.
Parser Error Message: Section or group name 'system.web.extensions' is already defined. 

person Jader Dias    schedule 09.03.2009    source источник


Ответы (5)


У Фила Хаака здесь довольно хорошая рецензия

http://haacked.com/archive/2008/11/26/asp.net-mvc-on-iis-6-walkthrough.aspx

person Jason    schedule 09.03.2009

У меня была аналогичная проблема.

  1. Недавно я обновил свой сервер для поддержки .net framework 4.0.
  2. Преобразовал мое приложение для поддержки .net fx 4.0.
  3. Развернул приложение на сервере и пытаюсь проверить .. Я получаю «Ошибка HTTP 404 - файл или каталог не найдены»

Решение

  1. Откройте диспетчер IIS, разверните узел главного сервера (т. Е. Узел «Имя сервера»), а затем выберите узел расширений веб-службы.
  2. На правой панели диспетчера IIS щелкните правой кнопкой мыши расширение «ASP.NET v4.0. *».
  3. Щелкните кнопку Разрешить.
person Dhanaji    schedule 19.09.2012

Помимо ответа Джейсона, обычно нужно искать:

  • Включите отображение подстановочных знаков и укажите его на сборку aspnet, которую Фил упоминает в ссылке Джейсона.

Ошибка /default.aspx, которую вы получаете, похоже, является ошибкой конфигурации web.config. В самом верху файла web.config найдите:

<sectionGroup name="system.web.extensions" 

Скорее всего определяется дважды. Вам понадобится только ссылка на имеющуюся у вас сборку RC. Если вам нужны точные ссылки RC, создайте новый веб-проект ASP.NET MVC во временной папке. А затем возьмите из него web.config.

-E

person eduncan911    schedule 10.03.2009
comment
Я не нашел, где это определено в другом месте, но мне пришлось удалить этот раздел из своего Web.Config, и тогда он сработал. Но подсказка Джейсона мне тоже помогла. - person Jader Dias; 11.03.2009

Я также столкнулся с этой проблемой, в моем случае решением было удаление бета-версии ASP.NET MVC.

В приложении, с которым я пытался работать, была развернута корзина DLL MVC версии 1, и после удаления бета-версии все работало нормально.

person Alan Heywood    schedule 25.05.2009

Похожая проблема: мы попытались установить приложение MVC4 / .NET 4 на IIS6, настроили все, как описано, и получили ту же ошибку:

Directory Listing Denied
This Virtual Directory does not allow contents to be listed.

Для нас окончательным исправлением было добавление UrlRoutingModule в web.config:

  <add name="UrlRoutingModule"
       type="System.Web.Routing.UrlRoutingModule, System.Web.Routing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />

В этом есть смысл, но я не знаю, почему нам нужно было добавить это явно, а другим - нет. (Мы работаем в каталоге в Sharepoint, возможно, связанном ...)

person Scott Stafford    schedule 15.05.2013