我用Ubuntu软件包(mongodb-server,mongodb-client和dev)取代了mongodb-10gen安装。
apt-get install mongodb
此后,我现在无法连接到之前工作的REST界面。
做一个wget到http://127.0.0.1:27018 ,我收到以下回应:
Connecting to 127.0.0.1:27018... failed: Connection refused.
我以前的/etc/mongodb.conf文件有以下内容:
#enable REST rest = true
将其添加到打包的conf文件不能解决问题,即使重新启动也不能解决问题。
我也尝试改变以下没有效果:
# Disable the HTTP interface (Defaults to localhost:27018). # nohttpinterface = true
至
# Disable the HTTP interface (Defaults to localhost:27018). nohttpinterface = false
我search了几天,在Mongo网站上似乎没有任何类似的exception。 如果您在Ubuntu Oneiric上遇到类似问题,请添加您的评论,即使您没有find解决此问题的解决scheme。
首先,不要使用Ubuntu软件包 – 你会得到一个旧的版本,在某些情况下很旧(我已经看到了1.2,1.6等)。 使用10gen软件包,至于写这个你应该得到2.0.4
接下来,无论您定义的MongoDB端口是什么,HTTP接口的默认值都是+1000,所以如果您希望在27018上使用,那么您将不得不将MongoDB端口设置为26018.这似乎是一个奇怪的select。 如果您将端口设置作为默认值,那么您的普通端口将是27017,HTTP REST接口将是28017 – 您是否可能将它们混合?
最后,如果您想查看哪些端口正在监听,请使用:
lsof -i | grep LISTEN
这将给你一个所有开放的监听端口和他们拥有的进程的列表,为mongod添加另一个pipe道和grep,进一步缩小它的范围。