Подтвердить что ты не робот

Ошибка VS2010: невозможно запустить отладку на веб-сервере

Я получаю сообщение об ошибке "Невозможно начать отладку на веб-сервере" в Visual Studio 2010. Я нажал кнопку "Справка" и не сразу выполнил соответствующие предложения.

Это происходит с недавно созданным локальным проектом ASP.Net при изменении для использования IIS вместо Cassini (который работает для отладки). Он предлагает установить debug = "true" в web.config, а затем сразу же всплывает ошибка. Ничего не отображается в средстве просмотра событий.

Я могу подключиться к w3wp для отладки. Он работает, но не так удобен, как F5.

У меня также есть аналогичная проблема с VS2008 на том же ПК. Отладка работала для обоих.

Я перерегистрировал Framework 4 (aspnet_regiis -i). Я запустил ремонт VS2010 (это версия RTM). Я запускаюсь в окне Windows Server 2008 R2 x64.

У меня установлен Resharper V5.

Должно быть какое-то значение конфигурации или значение реестра, которое выживает при ремонте, вызывающем проблему.

Буду признателен за любые идеи.

4b9b3361

Ответ 1

У меня появился новый ПК с Windows 7. Я установил VS2010 и мою среду разработки и надеялся, что моя проблема с отладкой F5 исчезнет, ​​но до сих пор не удалось запустить отладчик.

Это был хороший ключ, поскольку он исключил установку программного обеспечения.

Я, наконец, проследил его до моего файла HOSTS. У меня была запись для некоторых моих локальных сайтов, к которым я могу получить доступ, например, " http://testsite.lcl", но IP-адрес, который я назначил, был моим IP-адресом компьютера вместо использования 127.0.0.1, поэтому он выглядел как удаленный сервер для VS2010. Возврат к 127.0.0.1 разрешил проблему.

Спасибо за помощь всем.

Ответ 2

Отключить проверку обратной связи

(оригинальная страница microsoft здесь)

Чтобы установить раздел реестра DisableLoopbackCheck, выполните следующие действия:

Нажмите кнопку Пуск, выберите пункт Выполнить, введите команду regedit и нажмите кнопку ОК.

В редакторе реестра найдите и затем щелкните следующий раздел реестра: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\LSA

Щелкните правой кнопкой мыши Lsa, выберите "Создать", а затем "Значение DWORD".

Введите DisableLoopbackCheck и нажмите клавишу ВВОД.

Щелкните правой кнопкой мыши DisableLoopbackCheck и выберите команду Изменить.

В поле Значение введите 1 и нажмите кнопку ОК.

Закройте редактор реестра и перезагрузите компьютер.

Ответ 3

У меня была та же проблема. Как я его исправил.

Перейдите в IIS (в моем случае IIS 7/Windows 7). Выберите свой веб-сайт из списка, нажмите "Компиляция .NET" в разделе ASP.NET. Выберите "Открыть". Убедитесь, что для параметра "Отладка" установлено значение "Истина". В моем случае это было ложь. Как только я изменил его на True - у меня есть отладка назад:)

Ответ 4

Эти шаги меня различаются в зависимости от вашей версии Windows. Я использую 7 с iis 7.

Откройте диспетчер IIS, нажмите "Пулы приложений" и найдите два пула ASP.NET v4.0 (One называется "ASP.NET v4.0" , другой "ASP.NET v4.0 Classic". Скорее всего, это первый один остановлен. Не запускайте его еще, нам нужно исследовать немного больше.

В пуле "ASP.NET v4.0" проверьте имя в поле "Идентификация". Это ApplicationPoolIdentity? Помните имя.

Откройте "Управление компьютером" (щелкните правой кнопкой мыши "Мой компьютер" и выберите "Управление" ). Разверните Event Viewer, затем Windows Logs. Нажмите "Приложение" и дождитесь загрузки данных. Должна быть ошибка с источником службы профилей пользователей с сообщением, которое начинается с "Windows не может войти в систему, потому что ваш профиль не может быть загружен. Убедитесь, что вы подключены к сети и что ваша сеть работает правильно".

Если вы это обнаружите, у вас будет такая же проблема, как и у меня.

Решение. Вернитесь к диспетчеру IIS и щелкните правой кнопкой мыши на "ASP.NET v4.0" и выберите "Дополнительные настройки". В разделе "Модель процесса" первое поле - "Идентичность". Измените это значение с ApplicationPoolIdentity на NetworkService. Нажмите "ОК".

Теперь запустите пул, если он не перезагрузился автоматически. Вернитесь в свое приложение и нажмите F5 (начните отладку), и ваше приложение должно работать.

Обратите внимание, что я не понял, почему это работает, и это может быть угрозой безопасности, но по крайней мере вы сможете сделать некоторую работу, пока думаете об этом.

Ответ 5

У меня была эта проблема в Visual Studio 2012 при запуске веб-сайта, который я создал в Visual Studio 2010. Я пробовал каждое из следующих действий, которое не решило проблему, но все равно могло потребоваться:

  • Проверено, что пул приложений был нацелен на ту же структуру, что и в web.config

    <compilation defaultLanguage="c#" debug="true" targetFramework="4.0">
  • Запуск 64-битного удаленного отладчика:\Program Files (x86)\Microsoft Visual Studio 11.0\Common7\IDE\Удаленный отладчик \x64\msvsmon.exe

  • Установите ключ реестра DisableLoopbackCheck и перезапустите Windows. Инструкции MS здесь

  • Просмотрел сайт локально (все получилось просто отлично).

  • Наконец, я нашел настройку IIS, которая устранила проблему.

    • Перейдите в IIS (7.5 в моем случае) и нажмите на соответствующий сайт на сайтах node.
    • Дважды щелкните .NET Compilation в разделе ASP.NET
    • В разделе "Поведение" установите "Отладка" на "Истина".
    • Нажмите "Применить" и запустите сайт в Visual Studio.

Ответ 6

Сначала вы можете развернуть свое веб-приложение/сайт с помощью iis, а затем открыть свою визуальную студию 2010. Затем нажмите "Файл" → open- > website- > Local IIS Site, затем выберите свой веб-сайт/приложение. Затем вы обнаружите, что отладка может работать. Этот метод работает для моего случая.

Ответ 7

У меня была такая же проблема на Win7 и VS2010 (без ReSharper), и выяснилось, что Skype прослушивается на порту 80. IIS слушает порт 80 по умолчанию. Это может произойти, когда вы устанавливаете VS для отладки существующего веб-приложения, работающего в IIS, вместо встроенного веб-сервера отладки ASP.NET.

Я решил проблему, сняв флажок "Использовать порты 80 и 443 в качестве альтернативы входящим соединениям". в Skype в меню "Инструменты" → "Параметры" → "Соединение", а затем перезапуск Skype.

Ответ 8

Что сработало для меня, так это перейти в IIS на уровне сервера, нажать на ограничения ISAPI и CGI, я обнаружил, что aspnet_isapi.dll для asp.net 4.0 имеет значение Не разрешено. Я установил его для разрешения и отладки. Шаги:

  • Откройте IIS.
  • Нажмите на верхний уровень
  • Выберите ISAPI и ограничения CGI в IIS в представлении "Возможности"
  • Изучите описания, и если для ASP.NET v4 [текущая версия] установлено недопустимое ограничение, нажмите ссылку "Разрешить" в разделе "Действия" в диалоговом окне.

Это изменение должно позаботиться о проблеме. Обратите внимание, что я придумал это решение, когда попытался запустить веб-приложение с отладкой с помощью youg, и я придумал следующую ошибку:

Ошибка HTTP 404.2 - не найдено Страница, которую вы запрашиваете, не может быть подана из-за настроек списка ISAPI и CGI Restriction на веб-сервере.

Ответ 9

Еще одна вещь, которую нужно попробовать (это то, что сработало для меня):

В IIS выберите "Пулы приложений" ( "Ваш сайт" ) > "Дополнительные настройки" и измените "Включить 32-разрядные приложения" на "Истина".

Ответ 10

У меня нет определенного ответа, хотя в этих статьях может быть полезная информация:

Использование Windbg для начала с w3wp.exe Это относится к отладчикам windbg/cdb специально, но этот совет должен работать с Visual Studio, говорящим с cdb (который подключен к w3wp).

Удаленная отладка с Visual Studio Причина, по которой я упоминаю удаленную отладку, заключается в том, что мне пришлось использовать это несколько раз в прошлом запустите Visual Studio для подключения к w3wp.exe. W3wp.exe работает в другом сеансе, поэтому вы не можете напрямую присоединить к нему отладчик.

Ответ 11

Вы не упомянули, какую операционную систему вы используете. Но это может быть не связано с операционной системой. Я предполагаю здесь. Если вы работаете в Windows 7, попробуйте запустить визуальную студию в преддверии администратора.

Вы также можете попробовать добавить свой идентификатор пользователя в группу пользователей отладчика VS. Вы можете получить доступ к группам пользователей, щелкнув по имени компьютера или на моем компьютере и выбрав "Управление". Под этим вы можете найти пользователей и группы.

Ответ 12

В IIS в TAB безопасности каталога, если вы используете SSL, проверьте "Игнорировать сертификат клиента", если вы используете его на локальном ПК.

Ответ 13

Я получал это после новой установки Windows 7, которая по умолчанию не включала IIS. После установки IIS пул приложений по умолчанию был создан для работы под .NET 2.0. Хотя я смог установить пул приложений по умолчанию для .net 4 из .net 2, я все еще получил эту ошибку. Мне пришлось переустановить .NET в IIS, чтобы он работал правильно. То есть, запустите C:\Windows\Microsoft.NET {FrameworkFolder}\v {FrameworkNumber}\aspnet_regiis -i

Ответ 14

Что сработало для меня, так это изменить файл HOSTS в папке C:\Windows\System32\drivers\etc и установить loopback для имени веб-сайта, которое я установил.

Например:
127.0.0.1 http://guyellisrocks.com/

Ответ 15

У меня была такая же проблема, и в моем случае это произошло потому, что идентификатор AppPool был настроен на олицетворение пользователя AD, у которого был изменен пароль. Поэтому процесс не запускался, и AppPool всегда останавливался при попытке отладки от VS.

После обновления пароля в AppPool/Advanced Settings/Identity все началось нормально.

Ответ 16

Проверьте, существует ли файл msvsmon.exe(Visual Studio Remote Debugging Monitor) в следующем пути: C:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE\Удаленный отладчик \x64

Если файл не сохраняется на указанном выше пути, вам необходимо получить его с любой другой машины, имеющей ту же версию Visualstudio.

Ответ 17

Пробовав все вышеперечисленные решения, я все еще сталкивался с этой проблемой. Другие проекты отлаживались без проблем, поэтому я знал, что это должно быть чем-то связано с этой конкретной конфигурацией приложения.

Mine - это приложение MVC, работающее под IIS 8. Проблема заключалась в перезаписи URL.

У меня было правило для принудительной привязки косых черт. Все, что мне нужно было сделать, это отключить его (что может быть сделано в IIS напрямую или через web.config ниже - просто установите enabled = "false" )

 <rewrite>
        <rules>
            <rule name="AddTrailingSlashRule1" enabled="false" stopProcessing="true">
                <match url="(.*[^/])$" />
                <conditions>
                    <add input="{REQUEST_FILENAME}" matchType="IsDirectory" negate="true" />
                    <add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true" />
                </conditions>
                <action type="Redirect" url="{R:1}/" />
            </rule>
        </rules>
    </rewrite>

Ответ 18

Разгрузите проект, щелкните правой кнопкой мыши "edit abc.csproj". Вы увидите конфигурацию. Если ваш проект сопоставлен с использованием URL-адреса IIS Web Express.

<WebProjectProperties>
<UseIIS>True</UseIIS>
<AutoAssignPort>True</AutoAssignPort>
<DevelopmentServerPort>6270</DevelopmentServerPort>
<DevelopmentServerVPath>/</DevelopmentServerVPath>
<IISUrl>http://matrimonyfree.in/</IISUrl>
<NTLMAuthentication>False</NTLMAuthentication>
<UseCustomServer>False</UseCustomServer>
<CustomServerUrl>
</CustomServerUrl>
<SaveServerSettingsInUserFile>False</SaveServerSettingsInUserFile>
</WebProjectProperties>

verify Если вы запустили веб-сайт в IIS http://matrimonyfree.in в этом случае

Ответ 19

Это может быть также из-за какого-то специального или незаконного формата в вашем конфигурационном файле. Я предлагаю вам сначала проверить это.

В моем случае я получал ошибку из-за этого, когда я пытался просмотреть мою службу из IIS, она показала мне настоящую ошибку.

Ответ 20

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

В конце концов я решил его в 2010 и 2012 годах, отследив его до следующего отсутствующего файла в настройке исходных файлов Debug

C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\atlmfc\src\mfc\

Решение > Свойствa > Отладка исходных файлов >

Убедитесь, что все файлы там, затем удалите эту запись, и все снова работает.

Ответ 21

Вы изменили привязки на своем веб-сайте IIS? Если это так, вам нужно перейти к свойствам проекта, выбрать вкладку "Веб" и изменить URL-адрес проекта, чтобы он соответствовал вашей привязке. поэтому, когда он говорит http:///yourwebsite, измените его на http:///yourwebsite

Это сработало для меня.

Ответ 22

В моем случае это вызвало проблему с system.webServer > httpErrors > errorMode в файле web.config.

Если у вас есть errorMode="Custom" попробуйте следующее:

<httpErrors errorMode="DetailedLocalOnly">

Смотрите этот ответ: fooobar.com/questions/60791/... для вариантов и других идей, касающихся перезаписи URL-адресов

Ответ 23

У меня была такая же проблема с Visual Studio 2013. В моем случае я удалил "Веб-сайт по умолчанию" из IIS. Чтобы решить проблему, я снова создал веб-сайт по умолчанию, установил физический путь к C:\inetpub\wwwroot и порту до 80 (порт по умолчанию). После перезагрузки Visual Studio он работал отлично. Надеюсь, это поможет кому-то.

Ответ 24

enter image description here

Невозможно запустить отладку на веб-сервере. веб-сервер настроен неправильно.

Как решить эту проблему?

Шаг 1

откройте командную строку (запустите от имени администратора)

Шаг 2

C:\Windows\system32 > CD..

C:\Windows > cd Microsoft.NET

C:\Windows\Microsoft.NET > cd Framework

C:\Windows\Microsoft.NET\Framework > cd v4.0.30319

C:\Windows\Microsoft.NET\Framework\v4.0.30319 > aspnet_regiis.exe -i

Ответ 25

Ваш файл решения в visual studio не работает. Это известная проблема при переходе с веб-сайта файловой системы на веб-сайт IIS, и она перенесена с 2008 по 2010 год. Однако не уверены в местоположении для отчета об ошибке на сайте ms kb.

Удалите веб-сайт из файла решения (щелкните правой кнопкой мыши имя проекта, нажмите "удалить" ). Затем щелкните правой кнопкой мыши имя решения, нажмите "добавить существующий веб-сайт". Когда появится диалоговое окно для добавления веб-сайта, выберите "из IIS" в левой панели. Перейдите к своему приложению в IIS, выберите "использовать слой безопасных сокетов", если это необходимо, и нажмите "закончить" (или что бы ни была обозначена этой кнопкой).

это будет постоянно исправлять проблему.

Ответ 26

Невозможно начать отладку на веб-сервере. веб-сервер настроен неправильно.

  • Как решить эту проблему?

    Шаг-1

    откройте командную строку (запустите от имени администратора)

    Шаг 2

    C:\Windows\system32 > CD..

    C:\Windows > cd Microsoft.NET

    C:\Windows\Microsoft.NET > cd Framework

    C:\Windows\Microsoft.NET\Framework > cd v4.0.30319

    C:\Windows\Microsoft.NET\Framework\v4.0.30319 > aspnet_regiis.exe -i Microsoft (R) ASP.NET RegIIS версия 4.0.30319.0 Администрирование утилиту для установки и удаления ASP.NET на локальном компьютере. Авторское право (C) Корпорация Microsoft. Все права защищены. Начало установка ASP.NET(4.0.30319.0)................... Закончено установка ASP.NET(4.0.30319.0).

    C:\Windows\Microsoft.NET\Framework\v4.0.30319 >

Ответ 27

Одна из вещей, которую нужно проверить, - убедиться, что IIS запущен и работает. Что-то простое, что могло бы решить эту проблему иногда.