Я пытаюсь использовать rockmongo. После установки я не могу его использовать. В нем говорится: « Чтобы все было правильно, вы должны установить модуль php_mongo. Здесь для установки документов на PHP.net ».
Я уже установил расширение драйвера mongoDB через sudo pecl install mongo
.
locate mongo
шоу /usr/lib/php5/20090626+lfs/mongo.so
Однако php -v
показывает несколько предупреждений (которые, я думаю, связаны с монго)
PHP: syntax error, unexpected $end, expecting ']' in /etc/php5/cli/conf.d/mongodb.ini on line 3 PHP Warning: PHP Startup: Unable to load dynamic library '/usr/lib/php5/20100525+lfs/mongo.so' - /usr/lib/php5/20100525+lfs/mongo.so: cannot open shared object file: No such file or directory in Unknown on line 0 PHP 5.4.28-1+deb.sury.org~precise+1 (cli) (built: May 5 2014 09:39:26) Copyright (c) 1997-2014 The PHP Group Zend Engine v2.4.0, Copyright (c) 1998-2014 Zend Technologies
i открыл /usr/lib/php5/
и выяснил, что есть другой каталог ( 20090626 + lfs ), который содержит mongo.so.
Я пробовал различные онлайн-уроки, но ничего не помогло.
Редактировать : Вот мой mongodb.ini
;----- start ----- extension=mongo.so \[mongo\] ; If the driver should reconnect to mongo mongo.auto_reconnect = true ; Whether to allow persistent connections mongo.allow_persistent = On ; Maximum number of persistent connections (-1 means unlimited) mongo.max_persistent = -1 ; Maximum number of links (persistent and non-persistent, -1 means unlimited) mongo.max_connections = -1 ; Default host for mongo connection mongo.default_host = www.example.com ; Default port for mongo database mongo.default_port = 42 ; When saving files to the database, size of chunks to split them into mongo.chunk_size = 1024 ; Specify an alternate character to $ to use for special db functions ($set, $push, $exists, etc.) mongo.cmd = "$" ;----- end -----
Я решил эту проблему, используя версию 1.1.9 mongodb. Сначала удалите текущую версию mongodb, а затем установите версию 1.1.9:
sudo pecl uninstall mongodb sudo pecl install mongodb-1.1.9 composer update
Добавьте полный путь к расширению mongodb.ini
в mongodb.ini
:
extension=/usr/lib/php5/20090626+lfs/mongo.so
Также [mongo]
должно быть написано точно так же, как NOT \[mongo\]
.
Не забудьте перезагрузить / перезагрузить веб-сервер, чтобы загрузить новую конфигурацию.
Вы можете проверить, что все в порядке:
php -i | grep mongo
Моя версия php – 7.0, но она также должна работать с версией 5.x.
Если у вас есть это в файле /etc/php/7.0/mods-available/mongo.ini
extension=mongodb.so
Прокомментируйте эту строку. После этого перезапустите php и он должен работать.