IIS 7 не распознает файл svc

Я пытаюсь опубликовать веб-сервис с использованием WCF на IIS7.

Я создал сайт для этого проекта, и я создал приложение также как MSDN, предложенный. Я могу открыть html файлы в своем браузере из созданной папки, но я получаю ошибку 404.3 (запрашиваемая вами страница не может быть подана из-за конфигурации расширения), если я попытаюсь получить доступ к svc файлу моей службы. Я прочитал, что должен запускать servicemodelreg для установки отсутствующих обработчиков для файлов svc. После этого у меня появилась ошибка, говорящая, что обработчик имеет плохой модуль.

Я каждый раз проверял следующее:

  • IIS включен
  • Включен ASP.NET
  • Существует обработчик файлов svc

У меня кончились идеи...

Ответы

Ответ 1

Это происходит, если IIS установлен после .NET Framework и Visual Studio, поэтому необходимо зарегистрировать ASP.Net. Если сначала установить IIS, таких проблем не будет.

Но решение прост: откройте Visual Studio Command Promt и введите эту команду

aspnet_regiis.exe -i

Вот ссылка с более подробной информацией об этой команде и ее параметрах.

Ответ 2

В окнах 8 запустите DISM.exe, чтобы включить WCF:

DISM /Online /Enable-Feature /FeatureName:WCF-HTTP-Activation
DISM /Online /Enable-Feature /FeatureName:WCF-HTTP-Activation45

Или, если вы настраиваете все, используя мастер диспетчера сервера Dashboard Add Roles and Features Wizard, не забудьте проверить "HTTP-активацию" в службах WCF

enter image description here

Ответ 3

Сделайте следующие шаги для разрешить обработку файлов SVC в IIS на Windows 10

  • Нажмите клавишу окна + R (появится надпись Выполнить, введите optionalfeatures и нажмите клавишу ввода.
  • Это принесет мастер функций программы. Убедитесь, что выбраны следующие параметры, как показано в снимке.

Выполните шаги, указанные в следующих моментальных снимках

Снимок 1 Отображение функций Windows, необходимых для включения

Снимок 2 Показывает, чтобы включить дополнительные функции

Ответ 4

Для Windows 8, чтобы включить WCF, необходимо было запустить эти команды в командной строке запуска Visual Studio:

DISM /Online /Enable-Feature /FeatureName:WAS-WindowsActivationService
DISM /Online /Enable-Feature /FeatureName:WAS-ProcessModel
DISM /Online /Enable-Feature /FeatureName:WAS-NetFxEnvironment
DISM /Online /Enable-Feature /FeatureName:WAS-ConfigurationAPI
DISM /Online /Enable-Feature /FeatureName:WCF-HTTP-Activation
DISM /Online /Enable-Feature /FeatureName:WCF-HTTP-Activation45