【发布时间】:2016-12-08 02:32:40
【问题描述】:
我们的 devops 最近在我们的内部 ElasticSearch 服务器上启用了 SSL,而我们的 Ubuntu 开发框连接到它很好,但它在 Mac 开发框(运行 Django)上导致 SSLError。
SSLError at /search
ConnectionError(EOF occurred in violation of protocol (_ssl.c:590)) caused by: SSLError(EOF occurred in violation of protocol (_ssl.c:590))
到目前为止我所知道的:
- 不仅限于 El Capitan,还打破了早期版本
- 我们可以通过 https 连接到其他 ES 服务,我们的 devops 告诉我我们的 ES 服务有更高的 https 要求
- Openssl v0.9.8 在 ES 服务上存在握手问题
- Openssl v1.0.1 在 ES 服务上运行良好
网上有很多关于这个问题的帖子,但都没有帮助。
我试过了:
- brew link --force openssl(但 EL Capitan 正在阻止它),Homebrew refusing to link OpenSSL 没有任何解决方案有效
- 将
/usr/local/opt/openssl/lib添加到DYLD_LIBRARY_PATH - 将 python 从 2.7.10 升级到 2.7.12
- 重建虚拟环境
以上都不起作用...
问题:
- 是因为 OpenSSL 版本的原因吗?
- 是不是因为Python版本的原因是_ssl.c?
- 我该如何解决这个问题?
【问题讨论】: