0

我正在尝试使用Boost AsioLibCURL构建一个完整的 Web 缓存代理,我已经构建了服务器并且一切正常。它正确地接收 http 请求(GET、POST、使用 POST 上传……),并将响应正确地发送回浏览器。

现在,我想扩展它,以便它可以处理 https 请求。我在 LibCURL 网站http://curl.haxx.se/libcurl/c/libcurl-tutorial.html(代理部分)中读到了它,我了解它是如何工作的,并且我清楚地知道它应该如何完成。但是我没有找到关于代理如何处理 https 请求的好文档。和:

  • 源应用程序和代理交换的可能消息(信息、格式、长度...)是什么?
  • 要考虑的事情。
  • ...

提前致谢 :-) 。

4

1 回答 1

1

您将收到纯文本的 CONNECT 命令,并对其进行响应,然后将加密之后的通信。如果您的代理要成为 SSL 端点,考虑到 HTTPS 需要与目标主机地址匹配的证书,这会带来很大的问题,那么您将需要在两个连接上都进入 SSL 模式。更有可能您应该开始双向复制字节而不尝试处理内容。

于 2013-05-13T23:15:22.477 回答