Я пытаюсь настроить ARR внутри Azure Website. У меня есть рабочая реализация на Azure VM, но я бы хотел перейти на сайт, поэтому мне не нужно активно управлять виртуальной машиной.ARR Обратный прокси на Azure Website удаляет заголовок ответа WebSockets 'Sec-WebSocket-Accept'
Проблема, которая возникает у меня, связана с запросом и ответом на соединение с WebSockets SignalR, который проходит через мой обратный прокси ARR.
Ответ на сервере перед прохождением через ARR через IIS Request Tracing:
Upgrade: Websocket
Server: Microsoft-IIS/8.0
X-Content-Type-Options: nosniff
X-Powered-By: ASP.NET
X-Powered-By: ARR/3.0
Sec-WebSocket-Accept: IVoaaOhRLbaSxQzHV1TRkwHbtFc=**
Connection: Upgrade
X-FE-DATA: AppId:Unknown-StatusCode
X-Powered-By: ASP.NET
DWAS-Handler-Name: EXECUTE|101|0|0x0|CONFIG_SUCCESS|ApplicationRequestRoutingHandler|::1|\\100.68.100.59\volume-21-default\be0a77feeba577989612\3323291baecf417bb67a391f58af8a90\
Response глазами клиента:
HTTP/1.1 101 Switching Protocols
Upgrade: Websocket
Server: Microsoft-IIS/8.0
X-Powered-By: ASP.NET
X-Powered-By: ARR/3.0
X-Powered-By: ASP.NET
Connection: Upgrade
Как вы можете видеть, заголовок Sec-WebSocket-Accept
в настоящее время раздели из ответ. Это означает, что клиент не выполняет соединение и по умолчанию использует длительный опрос вместо протокола websockets.
Любая идея, почему этот заголовок удаляется? Используется ARR 3.0, который поддерживает встроенные веб-дескрипторы, а веб-камеры включены на панели конфигурации Azure Website.
Я также столкнулся с этой проблемой, пытаясь запустить маршрутизатор WAMP в Azure. –
Однако в моем случае HTTP-заголовок, который удаляется, является «Sec-WebSocket-Protocol:» –
Я сообщил об этом Microsoft, они подтвердили эту проблему, но ETA для исправления пока нет. https://social.msdn.microsoft.com/Forums/en-US/d7f6bc70-a1c6-4d6c-ac00-ead09244d29f/secwebsocketprotocol-http-header-stripped-by-arr?forum=windowsazurewebsitespreview –