【发布时间】:2016-04-13 22:58:09
【问题描述】:
我已经通过 Homebrew 在 Mac 上安装了 CouchDB(耶,自制!):
brew install couchdb
然后我完成了一系列 SSL 设置步骤(在 shell 脚本中),这些步骤在官方文档中有详细说明:http://docs.couchdb.org/en/1.6.1/config/http.html -
#!/bin/sh
currDir=$(pwd)
mkdir couch_certs
cd couch_certs
openssl genrsa > privkey.pem
openssl req -new -x509 -key privkey.pem -out couchdb.pem -days 1095
chmod 600 privkey.pem couchdb.pem
perl -p -i -e "s#\[daemons\]#[daemons]\nhttpsd = {couch_httpd, start_link, [https]}#" /usr/local/etc/couchdb/default.ini
perl -p -i -e "s#\[ssl\]#[ssl]\ncert_file = ${currDir}/couchdb.pem#" /usr/local/etc/couchdb/default.ini
perl -p -i -e "s#\[ssl\]#[ssl]\nkey_file = ${currDir}/privkey.pem#" /usr/local/etc/couchdb/default.ini
然后(同一个终端),我启动沙发:
couchdb
在不同的终端我测试:
curl -k https://127.0.0.1:6984/
然后失败:
curl: (35) Server aborted the SSL handshake
我做错了什么?
注意,在将 CouchDB 作为应用程序安装时,我会遇到同样的错误(http://docs.couchdb.org/en/stable/install/mac.html 的第 2.3.1 节)
编辑:我认为这是一个 Erlang SSL 问题:http://bugs.erlang.org/browse/ERL-74
【问题讨论】:
-
默认端口号是 5984,除非您在配置中更改了可能有问题的地方。
-
5984 是 http 的默认值,6984 是 https、Dominic 的默认值。