使用mongo php ext连接到mongo数据库时超时

时间:2017-03-20 08:30:43

标签: php mongodb lxc

在Ubuntu 12.04和php 5.6下使用mongo php ext连接到MongoDB数据库时超时

我正在使用

  • 最新的Apache 2.4
  • Ubuntu 12.04
  • php 5.6 with mongo ext Version 1.6.14
  • 在lxc容器中运行的MongoDB v3.4

问题是当我连接到mongo数据库时。

我正在使用此连接字符串:

  

的mongodb:// myDbUser:passW0rT@0.0.0.0:27020 / MYDB

(密码,数据库和地址已更改)。

我已经验证安装了php mongo ext,使用以下代码:

echo extension_loaded("mongo") ? "loaded\n" : "not loaded\n"; //prints loaded.
if (class_exists('\MongoClient')) {
   echo 'is Mongo Client'."\n";//this is printed
}
else {
   echo 'no Mongo Client'."\n";
}


try {
    $client = new MongoClient('mongodb://myDbUser:passW0rT@0.0.0.0:27020/myDb', []);
} catch (Exception $ex) {
    echo $ex->getMessage();//prints Failed to connect to: 0.0.0.0:27020: Connection timed out 
}

更奇怪的是我可以使用MongoClient连接到此数据库,除此之外,我可以通过在我的计算机上运行的本地服务器连接到此数据库(Win 10)。

当我将security.authorization设置为启用并且没有设置为禁用时,问题也会出现 - 然后我使用dsn mongodb://0.0.0.0:27020 不幸的是,当我使用www(安装了mongo数据库的服务器上的域)输入web addr时,服务器的响应总是会出现超时错误。

安装mongo的服务器可能是一个线索,它是作为容器运行的服务器,这意味着我必须添加端口号才能连接,例如。通过ssh。

我甚至将服务器从ngix更改为apache,问题并没有消失。

0 个答案:

没有答案