运维开发网

ruby – 未定义的符号:尝试运行Thin Webserver时的SSLv2_method

运维开发网 https://www.qedev.com 2020-06-13 09:39 出处:网络 作者:运维开发网整理
我用rvm(rvm pkg install openssl)安装了OpenSSL,然后重新安装了rvm 1.9.3 –with-openssl-dir = $rvm_path / usr 当我尝试运行瘦Web服务器时,出现以下错误: /home/ubuntu/.rvm/rubies/ruby-1.9.3-p327/lib/ruby/1.9.1/x86_64-linux/openssl.so: un
我用rvm(rvm pkg install openssl)安装了OpenSSL,然后重新安装了rvm 1.9.3 –with-openssl-dir = $rvm_path / usr

当我尝试运行瘦Web服务器时,出现以下错误:

/home/ubuntu/.rvm/rubies/ruby-1.9.3-p327/lib/ruby/1.9.1/x86_64-Linux/openssl.so:

undefined symbol: SSLv2_method –

/home/ubuntu/.rvm/rubies/ruby-1.9.3-p327/lib/ruby/1.9.1/x86_64-Linux/openssl.so

(LoadError)

这是在Ubuntu 12.04上运行的,我读过Ubuntu 12构建没有SSLv2支持的OpenSSL.然而,这里它引用了RVM的包 – RVM是否也这样做?这个问题有没有已知的解决方法?

正如你所说,Ubuntu在没有SSLv2支持的情况下构建openssl: Ubuntu and undefined symbol for SSLv2_method

对于读这篇文章的人来说,你的选择是(难度越来越大):

(1)安装rvm版本1.14.7,其中openssl pkg包含openssl版本0.9.8,默认包括SSLv2支持.

rvm implode # Completely destroy your rvm installation
curl -L https://get.rvm.io | bash -s -- --version 1.14.7

安装所需的软件包,重新编译你的ruby,它应该工作!

(2)(这为您提供了更多安全性):从源代码编译您自己的openssl,将其配置为包含SSLv2支持,然后使用–with-openssl-dir重新编译您的ruby,指向安装openssl的位置.

(3)修复精简,使其不再需要SSLv2_method符号,然后在GitHub上提交拉取请求

0

精彩评论

暂无评论...
验证码 换一张
取 消