Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Эта статья поможет устранить ошибку (WebSocketModule не загружается), которая возникает, когда функция протокола WebSocket не включена в Microsoft IIS (IIS) 8.0.
Исходная версия продукта: службы IIS 8.0, ASP.NET на платформа .NET Framework 4.5.2
Исходный номер базы знаний: 2778043
Симптомы
Следующее сообщение об ошибке возникает при попытке взаимодействия со службой Windows Communication Foundation (WCF), настроенной с NetHttpBinding
(для WebSockets) или веб-сайта ASP.NET через протокол WebSockets при размещении в IIS 8.0:
WebSocketModule не загружается. Проверьте, установлен ли компонент WebSocket, и webSocketModule включен в списке модулей IIS (см https://go.microsoft.com/fwlink/?LinkId=231398 . дополнительные сведения).
Причина
Эта проблема может возникнуть, если функция протокола WebSocket не включена в IIS 8.0.
Решение
Чтобы устранить эту проблему, включите функцию протокола WebSocket в IIS 8.0. Для этого выберите один из следующих вариантов:
В командной строке администратора выполните следующую команду:
%SystemRoot%\system32\dism.exe /online /enable-feature /featurename:IIS-WebSockets
Чтобы включить функцию протокола WebSocket с помощью пользовательского интерфейса в Windows 8, перейдите к разделу панель управления> Programs>Включение или отключение> функций Windows службы IIS> World Wide Web Services>Application Development>Feature WebSocket Protocol.
Чтобы включить функцию протокола WebSocket с помощью пользовательского интерфейса в Windows Server 2012, перейдите к протоколу >Web Server Web Server (IIS)>Web Server>Development>WebSocket Protocol.
Чтобы включить функцию протокола WebSocket с помощью задачи запуска в Azure:
Создайте файл Startup.cmd со следующей командой в проекте облачной службы:
%SystemRoot%\system32\dism.exe /online /enable-feature /featurename:IIS-WebSockets
Задайте для действия сборки значение None и установите для копирования в выходной каталог, чтобы скопировать always on this Startup.cmd file.
Добавьте следующее в файл ServiceDefinition.csdef :
<Startup> <Task commandLine="Startup.cmd" executionContext="elevated" taskType="simple"/> </Startup>