IIS Express выдает ошибку «Отказано в доступе» при отладке ASP.NET MVC - PullRequest
100 голосов
/ 29 января 2012

Я создал проект ASP.NET MVC 3 и использую IIS Express в качестве веб-сервера при разработке. Когда я пытаюсь отладить, я получаю сообщение об ошибке ниже.

Как это можно решить?

Ошибка сервера в «/» приложении.

Доступ запрещен. Описание: произошла ошибка при доступе к ресурсам, необходимым для обслуживания этого запроса. Возможно, сервер не настроен для доступа к запрошенному URL.

Сообщение об ошибке 401.2 .: неавторизовано: сбой входа в систему из-за конфигурации сервера. Убедитесь, что у вас есть разрешение на просмотр этого каталога или страницы на основе предоставленных вами учетных данных и методов аутентификации, включенных на веб-сервере. Обратитесь к администратору веб-сервера за дополнительной помощью.

Ответы [ 14 ]

109 голосов
/ 08 июля 2013

Если вы используете Visual Studio, вы также можете щелкнуть левой кнопкой мыши по проекту в Solution Explorer и изменить свойство Аутентификация Windows на Включено в Свойства Окно.

99 голосов
/ 16 августа 2012

Причиной этой проблемы была IIS Express, не разрешающая проверку подлинности Windows.Это можно включить, установив

<windowsAuthentication enabled="true">

в файле applicationhost.config, расположенном в C: \ Users [имя пользователя] \ Documents \ IISExpress \ config.

66 голосов
/ 22 апреля 2016

Я использовал ответ Джейсона, но хотел уточнить, как войти в свойства.

  1. Выбрать проект в обозревателе решений

enter image description here

F4 для доступа к свойствам (отличным от свойств, вызываемых правой кнопкой мыши) Изменение Аутентификация Windows на Включено

enter image description here

17 голосов
/ 25 сентября 2014

Хостинг в IIS Express: 1. Нажмите на свой проект в обозревателе решений, чтобы выбрать проект.2. Если панель свойств не открыта, откройте ее (F4).3. На панели «Свойства» для вашего проекта: a) Установите «Анонимная аутентификация» на «Отключено».б) Установите для параметра «Аутентификация Windows» значение «Включено».

12 голосов
/ 10 июня 2012

В моем случае мне пришлось открыть файл:

C:\...\Documents\IISExpress\config\applicationhost.config

У меня было это внутри файла:

  <authentication>
  <anonymousAuthentication enabled="true" User="" />

Я только что удалил часть User="".Я действительно не знаю, как эта штука попала туда ...:)

Примечание: убедитесь, что у вас есть что-то подобное в конце applicationhost.config:

   .
   .
   .
   <location path="MyCompany.MyProjectName.Web">
        <system.webServer>
            <security>
                <authentication>
                    <anonymousAuthentication enabled="true" />
                    <windowsAuthentication enabled="false" />
                </authentication>
            </security>
        </system.webServer>
    </location>
</configuration>

Вы можететакже хочу посмотреть здесь: https://stackoverflow.com/a/10041779/114029

Теперь я могу получить доступ к странице входа в систему, как ожидалось.

8 голосов
/ 24 февраля 2014

В моем случае предыдущий запуск моего приложения из VS зарезервировал URL. Я мог видеть это, запустив в консоли:

netsh http show urlacl

чтобы удалить это резервирование, я запустил это в повышенных консоли:

netsh http delete urlacl http://127.0.0.1:10002/

Я нашел эти шаги здесь решил мою проблему.

Я использую VS2013

5 голосов
/ 26 ноября 2013

Мне пришлось запустить Visual Studio в Administrative Mode, чтобы избавиться от этой ошибки.

3 голосов
/ 28 декабря 2014

У меня была такая же проблема, и, наконец, я смог ее преодолеть.

Solution ExplorerRight click on projectPropertiesWeb tabProject Url

Я выбрал другой номер порта , и все стало хорошо!

1 голос
/ 14 июля 2017

Я открыл свой файл web.config, нашел и удалил этот раздел:

<authorization>
  <deny users="?" />
</authorization>

и мой сайт появился, но есть проблемы с аутентификацией ..

1 голос
/ 22 сентября 2015

Ничто из вышеперечисленного не сработало для меня. Это работало на меня до сегодняшнего дня. Затем я понял, что я работал над созданием размещенного соединения на моем ноутбуке и поделился интернет-соединением с моим беспроводным сетевым подключением.

Чтобы исправить мою проблему:

Перейдите в Панель управления> Сеть и Интернет> Сетевые подключения

Щелкните правой кнопкой мыши на любом дополнительном беспроводном сетевом подключении, которое у вас может быть (мое имя было названо Беспроводное сетевое подключение 2), и выберите «Свойства».

Перейдите на вкладку «Общий доступ» вверху.

Снимите флажок с надписью «Разрешить другим пользователям сети подключаться к Интернету через этот компьютер».

Нажмите OK> затем Применить.

Надеюсь, это поможет!

...