是否有一个在mongo中运行的Web服务器?

时间:2013-09-26 14:46:08

标签: mongodb mongoid mongoose mongo-java

当我启动配置服务器时,我可以在记录器中看到以下行:

[websvr] admin web console waiting for connections on port 27017

所以,我想知道mongo是否使用Web服务器来维护配置数据?

2 个答案:

答案 0 :(得分:6)

(所有这些假设您使用的是当前版本的MongoDB,2.4或更高版本)

不,MongoDB不以任何方式使用Web服务器进行配置或管理(如文档here所述)。但是,出于某些其他目的,还有一个最小的Web服务器。

启动MongoDB时,通过配置文件或命令行完成配置。

有一个基本的,可选配置的网页,其中包含管理员感兴趣的一些统计信息({3}}并称为Http控制台。如果启用,默认情况下会在http://localhost:28017处可用。可以通过记录herenohttpinterface选项禁用它。此外,还有一个不推荐用于生产 REST api,可用于某些测试和开发任务。

作为一个例子,我刚刚确认配置文件中的nohttpinterface设置未设置为true(在此示例中我有一个自定义端口,因为我已经运行了另一个MongoDB实例)

verbose=true
port=25017

然后我启动了MongoDB。在日志文件中,存在:

Thu Sep 26 11:11:06.645 [websvr] admin web console waiting for connections on port 26017
Thu Sep 26 11:11:06.645 [initandlisten] waiting for connections on port 25017

然后,我在配置文件中添加了nohttpinterface选项:

verbose=true
port=25017
nohttpinterface=true

重新启动MongoDB后,我无法访问Http控制台。 Web服务器未启动(此时日志中没有引用websvr。)

Thu Sep 26 11:11:34.028 [initandlisten] waiting for connections on port 25017

Oops! Google Chrome could not connect to localhost:26017

答案 1 :(得分:0)

是的mongodb有一个内置的管理界面。您可以在HTTP界面上阅读 http://docs.mongodb.org/ecosystem/tools/http-interfaces/#http-interface