2
我試圖在Azure網站中設置ARR。我在Azure虛擬機上有一個工作實現,但想遷移到一個網站,所以我不必主動管理虛擬機。Azure網站上的ARR反向代理移除WebSocket響應標頭'Sec-WebSocket-Accept'
我遇到的問題特定於SignalR WebSockets連接請求和通過我的ARR反向代理的響應。由客戶端所看到
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\
響應:
通過IIS請求跟蹤通過ARR才通過服務器響應
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,它具有本地websocket支持,並且在Azure網站配置面板中啓用了websockets。
我也遇到了這個問題,試圖在Azure中運行WAMP路由器。 –
但是在我的情況下,被剝離出來的HTTP頭是'Sec-WebSocket-Protocol:' –
我向微軟報告了這個問題,他們承認這個問題,但沒有修復ETA。 https://social.msdn.microsoft.com/Forums/en-US/d7f6bc70-a1c6-4d6c-ac00-ead09244d29f/secwebsocketprotocol-http-header-stripped-by-arr?forum=windowsazurewebsitespreview –