Тайм-аут при подключении к базе данных MongoDB с помощью mongo php ext под Ubuntu 12.04 и php 5.6
я использую
И проблема в том, когда я подключаюсь к базе данных Монго.
Я использую эту строку подключения:
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, и проблема не исчезла.
Задача ещё не решена.
Других решений пока нет …