HTTP 404 при доступе.svc-файл в IIS
недавно я создал службу WCF, которая отлично работает при тестировании из Visual Studio 2008. но когда я развертываю проект в IIS, и я пытаюсь получить доступ .svc файл из IIS, я получаю эту ошибку:
"Server Error in '/' Application.The resource cannot be found. "
у меня была эта проблема в течение последних 4 дней .
в сопоставлениях обработчиков диспетчера IIS я вижу две записи .svc:
svc-Integrated and svc-ISAPI-2.0
10 ответов:
необходимо добавить сопоставление для расширения SVC в ASP.NET. самый простой способ сделать это-запустить
ServiceModelReg.exe -iот C:\Windows\Microsoft.NET\Framework\v3.0\Windows коммуникационный Фонд. Возможно, Вам также потребуется включить ASP.NET если вы еще этого не сделали.
Если вы используете Windows Server 2012, выполните следующие инструкции:
нашел эти инструкции в блоге это указывало на этот шаг, который работал для меня (Windows 8, 64-бит):
убедитесь, что в окне Компоненты Windows, у вас есть оба варианта WCF под .Чистый рамках тикали. Итак, перейдите в Панель управления - > Программы и компоненты –> Включение/выключение функций Windows –> функции –> добавить функции –> .NET Framework X. X функции. Убедитесь, что .Net framework говорит, что он установлен, и убедитесь, что узел активации WCF под ним выбран (флажок установлен) и оба параметра в разделе Активация WCF также проверяются.These are: * HTTP Activation * Non-HTTP Activation Both options need to be selected (checked box ticked).
Я вижу вы уже решили свою проблему - но для потомков:
У нас была аналогичная проблема, и обработчик SVC уже был правильно установлен. Нашей проблемой был обработчик ExtensionlessUrl, обрабатывающий запросы до того, как они достигли обработчика SVC.
чтобы проверить эти сопоставления обработчиков в Диспетчере IIS на уровне веб-сервера, просмотрите список обработчиков по порядку (это опция справа). Если различные обработчики ExtensionlessUrl появляются над Обработчики SVC, затем повторно перемещают их вниз, пока они не окажутся внизу.
У меня была такая же проблема сегодня.
для меня решение состояло в том, чтобы войти в IIS, щелкнуть правой кнопкой мыши на новом имени веб-сайта, выбрать Свойства, ASP.Net, и изменить ASP.Net версия от "1.1.4322" (который он установил по умолчанию) до 2.0.50727.
Как только я это сделаю, я могу щелкнуть правой кнопкой мыши .svc-файл, нажмите "Обзор" и просмотрите веб-страницу дружественного сервиса.
Это также может стать проблемой после включения совместимости управления IIS 6 в windows 10. Установка активации http платформы в разделе Службы WCF устранит проблему.
в моем случае ошибка была вызвана неверными настройками отображения в файле applicationhost.config (\System32\inetsrv\config). По какой-то причине Visual Studio 2013 повредил его при создании виртуального каталога в IIS. Исправление состояло в том, чтобы вручную отредактировать раздел сайтов в файле.
есть 2 версии .net framework приведены в разделе функции в Добавить роль / функции в server 2012
a. 3.5
b. 4.5
в зависимости от используемой структуры вы можете включить HTTP-активация в разделе Службы WCF. :)
в моем случае с Win 10. файл applicationHost.конфигурации поврежден по сравнению с 2012 годом. И вы можете получить копию истории этого файла под C:\inetpub\history. Перезапустите IIS и он работает правильно.

Comments