我正在使用iOS Couchbase Mobile在iPad上安装couchdb服务器,该服务器使用复制与https://cloudant.com上的服务器同步。 cloudant使用HTTPS,当我尝试在iPad上复制时,我只是因为错误而被垃圾邮件发送。
这是一个已知问题,如this FAQ article所示。它建议使用1.0.2来解决问题,但我怎么知道我是否在Erlang R14上运行它?
{"couchdb":"Welcome","version":"1.0.2","cloudant_build":"1.3.49"}
{"couchdb":"Welcome","version":"2.0.0-beta"}
(出于某种原因,它说我在iOS上使用2.0.0-beta,即使我下载了this version (2.0.1)。)
这是我得到的那种错误:
[info] [<0.327.0>] Retrying HEAD request to https://user:password@mycompany.cloudant.com/mydb/ in 16.0 seconds due to error {'EXIT',
{no_ssl_server,
{gen_server,call,
[<0.347.0>,
{send_req,
{{url,
"https://user:password@mycompany.cloudant.com/mydb/",
"mycompany.cloudant.com",443,"mycompany","password",
"/mydb/",https,hostname},
[{"Accept","application/json"},
{"User-Agent","CouchDB/2.0.0-beta"}],
head,<<>>,
[{response_format,binary},
{inactivity_timeout,30000},
{is_ssl,true},
{socket_options,[{keepalive,true},{nodelay,false}]},
{ssl_options,[{depth,3},{verify,verify_none}]}],
infinity}},
infinity]}}}
答案 0 :(得分:3)
此处还讨论了在CouchBase Mobile for iOS和另一个CouchDB / CouchBase实例之间启用https连接的问题:https://groups.google.com/d/msg/mobile-couchbase/DDHSisVWEyo/hxtlVRhQtwkJ
显然可以做到。
答案 1 :(得分:2)
我发现了一个“nightly build”,可以在CouchBase Mobile for iOS中启用SSL支持,但它从未进行过QA,并且它从未在“稳定版本”中发布。我联系了一位正在使用Couchbase Mobile for iOS的人,他告诉我应该使用TouchDB代替。
答案 2 :(得分:0)
CouchDB在其服务器响应标头中提供有关当前Erlang版本的信息,如下所示:
HTTP/1.1 200 OK
Server: CouchDB/1.0.1 (Erlang OTP/R13B) <----------------------
Date: Fri, 05 Nov 2010 14:57:16 GMT
Content-Type: text/plain;charset=utf-8
由于错误消息显示它无法找到HTTPS服务器,您可能希望通过普通HTTP进行检查。
BTW CouchDB和CouchBase是完全不同的数据库产品(均使用Erlang平台),您似乎可以互换使用它们。也许问题是你试图用CouchBase客户端或类似的东西连接到CouchDB?