Не могу запустить ASP.NET в MVC 2 веб-приложения на IIS 7.5
Я пытаюсь запустить ASP.NET MVC 2 веб-приложение под IIS на Windows 7, но я получаю ошибку 403.14. Вот шаги для воспроизведения:
- Открыть Visual Studio 2010
- создать новый ASP.NET проект MVC 2 называется MvcApplication1
- Shift+F5 для запуска приложения. Вы должны увидеть
http://localhost:{random_port}/и страница будет правильно отображаться. - нажмите на MvcApplication1 и выберите "Свойства". Перейдите в раздел" Web".
- Выберите "Использовать Локальные IIS Web server " и создать виртуальный каталог.
- сохранить.
- Shift+F5 для запуска приложения. Вы должны увидеть
http://localhost/MvcApplication1/и ошибка IISHTTP Error 403.14 - Forbidden The Web server is configured to not list the contents of this directory..
понятно, что по какой-то причине, ASP.NET маршрутизация работает неправильно.
вещи, которые я уже думал и пробовал:
- проверено, что все функции IIS включены в разделе "включение и выключение функций Windows".
- проверено, что веб-сайт по умолчанию настроено для использования .NET 4.0
- переназначен ASP.NET V4 scripmaps via
aspnet_regiis -iна
8 ответов:
хорошо, это решено для меня, выполнив следующие действия:
под управлением
aspnet_regiis -iна 32-бит каталогc:\Windows\Microsoft.NET\Framework\v4.0.30319.На данный момент я не понимаю, почему 64-битный режим не работает, но теперь я разблокирован. Надеюсь, это поможет всем, кто имеет эту проблему.
у меня была такая же проблема, так что спасибо за вашу помощь.
однако... вы пробовали запустить
aspnet_regiis -iкоманда в командной строке Visual Studio 64 bit (с правами администратора)? Когда я это сделал, он исправил его для 64-битного режима.чтобы уточнить, я щелкнул правой кнопкой мыши на
Visual Studio x64 Win64 Command Prompt (2010)и выберите Запуск от имени администратора. Тогда я пошел сюда:C:\Windows\Microsoft.NET\Framework64\v4.0.30319а это:
aspnet_regiis -iи теперь он отлично работает.
также убедитесь, что файл конфигурации имеет следующую строку, в противном случае маршрутизация не будет работать.
<system.webServer> <modules runAllManagedModulesForAllRequests="true"/> </system.webServer>
еще одна вещь, чтобы отметить, убедитесь, что ваш пул приложений настроен на комплексное, а не классический
не используйте runAllManagedModulesForAllRequests. Вы хотите, чтобы IIS обрабатывал такие ресурсы, как изображения.
<system.webServer> <modules runAllManagedModulesForAllRequests="true"/> </system.webServer>вместо того, чтобы добавить модуль маршрутизации в MVC
<system.webServer> <modules> <remove name="UrlRoutingModule-4.0" /> <add name="UrlRoutingModule-4.0" type="System.Web.Routing.UrlRoutingModule" preCondition="" /> </modules> </system.webServer>
У меня была такая же проблема на IIS8 / Windows Server 2012. Ни одно из многих предложенных решений не работало, пока я не попробовал следующее.
dism /online /enable-feature /featurename:IIS-ASPNET45 /Allбез переключателя '/ All ' он жаловался, что родительская функция не была установлена.
странно то, что согласно Windows'включение и выключение функций Windows объект, asp.net 4.5 уже установлен.
нет необходимости вносить какие-либо изменения в интернете.конфигурации, добавления или удаления модули.
Я всегда использовал настройку пользовательского сервера в VS 2008, которая по-прежнему позволяет мне отлаживать без проблем. Не уверен, если это работает по-другому в 2010 году
Comments