如何在Ubuntu服务器上将libcurl SSL后端从gnutls更改为openssl

前端之家收集整理的这篇文章主要介绍了如何在Ubuntu服务器上将libcurl SSL后端从gnutls更改为openssl前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
在处理Google OpenID SSL响应时,我在Tornado网络服务器中收到gnutls特定错误.我从Tornado邮件列表中得到的一个建议是尝试OpenSSL后端而不是gnutls.但它在ubuntu服务器上似乎并不简单(11.10).

ubuntu服务器上,gnutls由libcurl3-gnutls包提供,openssl curl支持由libcurl4-openssl-dev包提供. (我不知道为什么后者被命名为4和dev,但我在apt-cache搜索中找不到任何其他openssl curl包).

我默认安装了libcurl3-gnutls,但没有安装libcurl4-openssl-dev.所以我安装了后来重新启动的Torando实例.但这似乎不起作用.我仍然有同样的gnutls错误.

我发现关于curl邮件列表的旧讨论关于支持不同的SSL后端到libcurl的问题,但是没有找到今天它是如何完成的.到目前为止,我的猜测是openssl内置于libcurl中,而gnutls是通过单独的包提供的(这将解释为什么没有libcurl3-openssl).但是我如何使libcurl获取openssl后端而不是gnutls呢? libcurl / pycurl API中有一些选项可以做到这一点吗?

我尝试卸载libcurl3-gnutls,但apt-get提示它也将删除python-pycurl.所以那不行.

-dev包是开发包,它们包含库头,用于开发和编译使用该库的程序.应用程序二进制包(已经编译)通常不需要它们.安装libcurl4-openssl-dev不足以使针对libcurl3-gnutls构建的二进制包使用OpenSSL.它只对您重新编译它的应用程序有用.

python-pycurl包在libcurl3-gnutls和libgnutls26上有一个direct dependency.

除非在替代存储库中针对OpenSSL而不是GnuTLS编译了基于cURL的Ubuntu包,否则您可能不得不自己构建它们.

原则上可以通过下载源代码(apt-get source python-pycurl和相关的包)来完成.您必须进入Debian打包配置文件并更改选项(通常传递给configure脚本,该脚本在编译之前也配置Makefile)以便更改编译选项,而不是使用OpenSSL.您可能还需要更改包描述以限制对其他包的中断,可能通过使用provide:指令来说明您的包可以替换Ubuntu打包的包.

猜你在找的Ubuntu相关文章