【发布时间】:2019-05-04 16:35:15
【问题描述】:
我有以下架构设置。
客户端 A (Javascript) => 服务器 A (有 SignalR 服务器) 和 客户端 A(Javascript)=> 服务器 B(也有 SignalR 服务器)
我想知道我能不能做到这样.. 客户端 A => 服务器 A => 服务器 B
客户端 A 可以在哪里连接服务器 A 上的信号器,并使用重写规则,还允许连接到另一个 URI(如 /backend/signalr)到服务器 B?
这种架构背后的原因是因为我有一个为站点提供服务的前端,但还有一个后端处理应用程序,它也需要反馈给客户端(服务器 B 到客户端 A)。我目前在两个服务器上都使用 SignalR,客户端可以直接连接到两者。
这个问题的原因是我想将后端服务器从面向公众中移除并只允许内部网络请求,这很好并且可行,但我必须管理的唯一问题是客户端的反馈更新服务器 B 到客户端 A,通常必须通过服务器 A 进行路由。
我在这里看到了一个答案@SignalR with IIS 10 and ARR 3.0,实际上也有类似的问题,只是它没有第一个代理服务器也为 SignalR 提供服务。
我猜这是另一个不同的情况,因为它在架构中有 2 个 SignalR 实现。
另一个人认为,也许这可以通过在服务器 B 上使用 web.config 和 IP 限制来完成,只允许来自服务器 A 的直接通信,以及带有 SignalR 的 URI 以允许面向公众 - 但如果可能的话,我更愿意完全删除它.
我们的应用程序使用 ASP.NET 4.6 IIS 10
【问题讨论】:
-
很抱歉,但很高兴知道为什么这至少在没有评论的情况下被否决。
标签: asp.net proxy url-rewriting signalr pass-through