【发布时间】:2011-09-10 16:37:15
【问题描述】:
假设您在端口 80 上打开一个 tcp 套接字来处理 http 请求,并在端口 443 上打开一个 ssl 套接字来处理 https...一些代理如何在同一个端口上提供对它们的访问?
我只找到了这个link,但它不是很有用。您能否提供一个 erlang 示例或向我推荐一些资源,我可以从中了解更多有关该主题的信息?
提前致谢
【问题讨论】:
-
澄清一下,您的问题是关于“端口统一”(在同一端口上运行两种不同类型的服务器)还是 HTTP 代理如何处理对 HTTP 和 HTTPS 服务器的请求?
-
好吧...我会对您指出的两种情况都感兴趣(我正在尝试尽可能多地学习此类主题)..谢谢
-
端口统一不太常见,但它依赖于查看传入的数据包以查看它应该处理哪个协议(@seb 的回答)。 HTTP 代理在使用 HTTPS 时并不会真正中继 HTTP 请求,而是在客户端完成后将整个 TCP 连接转发到 HTTPS 服务器(因此 SSL/TLS 层直接在浏览器和目标服务器之间建立)使用
CONNECT(@MattH 的回答)。 -
感谢布鲁诺,你真的很有帮助:)
-
如果它对遇到这个问题的其他人有用,here is an implementation of port unification using Jetty in Java。