vct*_*tls 2 ssl couchdb windows-7-x64
我刚刚在我的机器上安装了CouchDB,用于使用需要SSL的StackEdit进行测试.
全新安装后,CouchDB启动正常.
但是,当我尝试启用带有自签名证书的SSL,如解释在这里,CouchDB的将无法启动.
这是日志所说的内容:
[error] 2016-09-29T16:16:01.402000Z couchdb@localhost <0.201.0> -------- Error starting Apache CouchDB:
{error,{shutdown,{failed_to_start_child,couch_secondary_services,{shutdown,{failed_to_start_child,httpsd,{'EXIT',{badarg,[{erlang,'++',[undefined,"."],[]},{couch_util,parse_term,1,[{file,"src/couch_util.erl"},{line,164}]},{couch_httpd,start_link,1,[{file,"src/couch_httpd.erl"},{line,46}]},{supervisor,do_start_child,2,[{file,"supervisor.erl"},{line,314}]},{supervisor,start_children,3,[{file,"supervisor.erl"},{line,297}]},{supervisor,init_children,2,[{file,"supervisor.erl"},{line,263}]},{gen_server,init_it,6,[{file,"gen_server.erl"},{line,306}]},{proc_lib,init_p_do_apply,3,[{file,"proc_lib.erl"},{line,237}]}]}}}}}}}
Run Code Online (Sandbox Code Playgroud)
完整记录在这里.
我的CouchDB位于C:\ CouchDB中.我也把密钥和证书文件放在那里.
我的OpenSSL版本是1.0.2d.
正如@Robin所提到的,CouchDB 2中存在一个错误
对我来说,这是在local.ini中添加以下行的问题:
[ssl]
ciphers = undefined
tls_versions = undefined
secure_renegotiate = undefined
[daemons]
httpsd = {chttpd, start_link, [https]}
Run Code Online (Sandbox Code Playgroud)
而另一个重要的细节是,在18之前使用Erlang版本时,CouchDB 2中的SSL支持似乎被破坏了.
有关详细信息,请参阅https://groups.google.com/forum/#!topic/couchdb-user-archive/cBrZ25DHHVA.