更新:
我刚刚开始处理新的VPS,我正在尝试从localhost(使用robomongo)连接其端口27017(mongodb数据库)。
它正在我的localhost计算机和另一台远程服务器上工作,但是我无法在此VPS上连接mongodb,可能导致此问题? 我这样开始:
mongod --setParameter enableLocalhostAuthBypass=0 --config /etc/mongodb.conf --fork
在/etc/mongodb.conf文件中未注释auth = true
(但问题似乎不是我无法认证,但mongodb根本没有响应)。
当我通过SSH连接启动mongo admin -u root -p root
时,它工作得很好(我可以连接我的数据库),我可以看到mongodb在端口27017上正常收听。
但是当我尝试从本地计算机访问它时,它无法建立连接,如果我尝试将其与浏览器连接,我应该收到mongodb错误消息:{{1}但是我不知道,我只有Chrome的失败页面(并且端口28017也没有响应)。
如何解决这个问题?我的VPS是全新的,我可能需要安装更多软件包,但我真的不知道可能需要什么,它看起来像防火墙问题,就像在请求到达之前阻止mongodb和响应的东西,我有juste已经安装了apache2和nginx而且他们没有运行所以我真的没有看到......
答案 0 :(得分:15)
好的,我发现了这个问题!
bind_ip 127.0.0.1
文件中有一行/etc/mongod.conf
。
它只提供对mongodb的指定IP地址的访问权限。
您应该创建一个IP数组并将配置文件编辑为:
bind_ip [127.0.0.1, x.x.x.x, ...]
x.x.x.x
是您的IP。
答案 1 :(得分:1)
我用文件解决了这个问题(/etc/mongod.conf) 评论如下:
#bindIp:127.0.0.1#仅收听本地接口,在所有接口上发表评论。