За да можете да коригирате „случайни странности“ като тази, е много полезно да включите вътрешното регистриране на драйвера. Драйверът прави много неща зад кулисите и може да изплюе всякаква важна информация за отстраняване на грешки.
Добавете следното в горната част на вашия скрипт:
<?php
MongoLog::setLevel(MongoLog::ALL);
MongoLog::setModule(MongoLog::ALL);
?>
По подразбиране регистраторът ще избълва „php съобщения за грешка“ (E_NOTICE/E_WARNING), ако сте активирали error_log, не забравяйте да проверите този файл за резултатите.
За вашия (леко модифициран) низ за връзка получавам следните резултати
Notice: PARSE INFO: Parsing mongodb://theAdmin:[email protected]:27027 in Command line code on line 1
Notice: PARSE INFO: - Found user 'theAdmin' and a password in Command line code on line 1
Notice: PARSE INFO: - Found node: localhost:27027 in Command line code on line 1
Notice: PARSE INFO: - Connection type: STANDALONE in Command line code on line 1
Notice: PARSE INFO: - No database name found for an authenticated connection. Using 'admin' as default database in Command line code on line 1
Notice: CON INFO: mongo_get_read_write_connection: finding a STANDALONE connection in Command line code on line 1
Notice: CON INFO: connection_create: creating new connection for localhost:27027 in Command line code on line 1
Notice: CON WARN: connection_create: error while creating connection for localhost:27027: Invalid argument in Command line code on line 1
Notice: CON WARN: Couldn't connect to 'localhost:27027': Invalid argument in Command line code on line 1
Подозирам, че има проблем със защитната стена и в двата края. Можете ли да се свържете със сървъра с помощта на mongo shell?