2012-04-22 188 views
3

我在这里寻找代理服务器的资源或代码示例代码,它可以处理用java编写的http和https请求。我搜索谷歌,发现很多关于如何处理http请求但不是https的数据。代理服务器,它可以处理http和https请求 - java

+0

什么是用例?斯蒂芬C为通用问题提供了正确的答案。您是否在谈论需要SSL卸载?您的Web服务器技术不支持加密的情况? – 2012-04-22 15:04:30

+0

您是否可以在大多数浏览器中配置代理服务器(我称之为“普通”HTTP/HTTPS代理),还是可以查看HTTPS请求的东西(我会调用一个“MITM代理”),这需要浏览器允许自己被欺骗为信任其证书? – Bruno 2012-04-22 23:16:32

回答

2

代理无法处理HTTPS并仍提供端到端安全性。使用HTTPS构建的SSL/TLS是不可能的。

而不提供端到端安全性的代理仅具有有限的实用性。所以我不惊讶你找不到现有的实现。

+1

这取决于问题的关键:它是否作为一个“MITM代理”来查看请求或正常的HTTPS代理(它不会,并保持端到端的安全性)。两者都存在。 – Bruno 2012-04-22 16:46:49

+0

嗯,我总是把一个“正常”的代理理解为能够/可以做缓存和过滤之类的东西。为了做到这一点,代理必须是中间人,因为它必须查看实现该功能的请求和响应。 – 2012-04-22 22:51:30

+0

当你配置它们的时候,我会把所有主流浏览器所使用的HTTP(S)代理的行为称为“正常”。如果您在Firefox或IE中配置“普通”HTTP代理服务器(例如),它将为代理服务器建立一个纯HTTP连接,并使用CONNECT连接到主机名,端口在URI中。尽管据我所知,从来没有最终确定,但这是用户代理多年来通过HTTP代理进行“https://”连接时所使用的规范:http://tools.ietf.org/html/ draft-luotonen-web-proxy-tunneling-01 – Bruno 2012-04-22 23:09:52

1

我假设你想要一个正常的HTTPS代理,这是一个代理,它不会查看请求,而只是在用户代理使用HTTP CONNECT方法后将所有流量中继到实际的HTTPS服务器。这就是HTTP代理服务器通常用于浏览器的HTTPS请求的方式。

我还没有尝试,但你可以看看码头和its ConnectHandler

+0

是的,这是我正在寻找的。 – 2012-04-25 10:11:38