Недавно я получил новый ноутбук с предустановленной Windows 10, который поставляется с IIS 10. Теперь у меня проблемы с отладкой двух моих старых веб-приложений (одно из них в Silverlight, другое в проекте WebApi).
При отладке приложения я получаю следующую ошибку в VisualStudio:
Не удается начать отладку на веб-сервере. Веб-сервер не смог найти запрошенный ресурс.
При просмотре приложения из IIS я получаю следующую ошибку в отношении приложения silverlight (проект WebAPI не показывает ошибок):
Ошибка HTTP 404.4 — не найдено У ресурса, который вы ищете, нет связанного с ним обработчика.
Когда я сравнил настройки IIS моего нового ноутбука с настройками моего старого ноутбука и ноутбука коллеги, который недавно обновился с win7->win10 (на обоих мы можем успешно отладить приложение silverlight), мы обнаружили, что мой новый ноутбук меньше сопоставлений обработчиков, зарегистрированных в IIS. Мы до сих пор не уверены, является ли это причиной ошибки, и если да, то какие сопоставления обработчиков потребуются для Silverlight. Эти отсутствующие сопоставления обработчиков выглядели так, как будто aspnet был установлен неправильно, поэтому мы выполнили следующую команду в консоли de dev (от имени администратора):
dism /online /enable-feature /all /featurename:IIS-ASPNET45 (похоже, это эквивалент aspnet_regiis, который больше не работает для win10)
Это не решило мою проблему, а также не добавило никаких сопоставлений обработчиков в IIS.
Я нашел это и другой вопрос SO, а также пробовал:
- проверка ограничений ISAPI и CGI (4 записи, все разрешено)
- проверка того, что функции ASP.NET 3.5 и ASP.NET 4.6 включены в функциях IIS в Windows (оба включены)
- удаление любых файлов .csproj.user (отсутствует)
- полное удаление iis и его повторное включение
- настройка пула приложений для запуска 32-битных приложений (на 64-битной машине)
- проверка того, установлено ли у меня «сканирование URL», насколько я знаю, у меня его нет.
- отладка с помощью iis express, который работает для приложения WebApi, но не работает для приложения silverlight
- проверка, был ли сайт в IIS "запущен"
- ввод моего IP-адреса вместо локального хоста в URL-адресе отладки
Любая помощь/понимание будет принята с благодарностью!