【问题标题】:IIS: Websocket and IIS sharing port 443IIS:Websocket 和 IIS 共享端口 443
【发布时间】:2015-01-21 16:19:33
【问题描述】:

IIS 7.5 是否可以在端口 443 上托管一个安全的 https 网站并让 Java 应用程序在 443 上运行 Socket.IO websocket?

目前我们在 443 上运行网站,在另一个端口 10001 上运行安全 websocket,但我们遇到了用户防火墙问题,希望将 websocket 移动到更好的“已知默认”端口。

我知道 IIS 8 具有 WebSocket 功能,但除非必须,否则我们宁愿不必将服务器实例升级到 server 2012。

【问题讨论】:

    标签: asp.net iis websocket socket.io iis-7.5


    【解决方案1】:

    给定 IP 地址上的两个独立进程不能同时侦听同一个传入端口。因此,您不能让 IIS 和 Java 应用程序同时监听同一个端口。此外,webSocket 协议以 Web 请求(IIS 服务器将处理)开始,然后当看到某些“升级”标头并且双方同意时,同一个套接字随后被“升级”到 webSocket 协议,这使得很难有两个独立的进程参与。

    我能想到的唯一方法是在 IIS 中构建 webSocket 的“代理”。当到 IIS 服务器的传入连接具有 webSocket 升级标头时,您必须将其代理到您的 Java 应用程序(在不同的端口上),然后它可以从那里处理事情(而实际的套接字继续通过 IIS 代理) )。

    可能有一个实际的产品可以做这种代理分离,你可以把它放在你的 IIS 服务器前面来为你做这件事,但现在我认为你得到了足够的复杂性,我想知道如果您真的应该选择干净的解决方案并升级。

    你能把 webSocket 放在 80 端口吗?客户应该没问题。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2017-08-28
      • 2012-01-21
      • 1970-01-01
      • 1970-01-01
      • 2013-02-08
      • 1970-01-01
      • 2013-09-06
      相关资源
      最近更新 更多