mongodb — время ожидания при подключении к базе данных mongo с помощью mongo php ext

Тайм-аут при подключении к базе данных MongoDB с помощью mongo php ext под Ubuntu 12.04 и php 5.6

я использую

  • последний Apache 2.4
  • Ubuntu 12.04
  • PHP 5.6 с Монго Ext Версия 1.6.14
  • MongoDB v3.4 работает в контейнере lxc

И проблема в том, когда я подключаюсь к базе данных Монго.

Я использую эту строку подключения:

MongoDB: // myDbUser: [email protected]: 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:[email protected]: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).

Это может быть одна подсказка, что сервер, на котором установлен mongo, является сервером, который работает как контейнер, что означает, что мне нужно добавить номер порта для подключения, например. через SSH.

Я даже изменил сервер с ngix на apache, и проблема не исчезла.

0

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]