Trabalhando com o Ubuntu 12.04 aqui, nginx e php5-fpm
Eu tinha o mongo funcionando bem no php 5.3, então adicionei o ondrej / php5 ppa e atualizei para o php5.4. Mantinha as extensões GD e CURL, mas não o mongo. Eu adicionei a linha novamente ao arquivo php.ini e nada. Ativei os erros de inicialização e obtive o seguinte:
PHP Startup: Unable to load dynamic library '/usr/lib/php5/20100525/mongo.so' - /usr/lib/php5/20100525/mongo.so: cannot open shared object file: No such file or directory
Então, acho que sim, find -name 'mongo.so'
mudei e movi o arquivo de 20090626 / para 20100525 / ..., o que resultou neste erro:
PHP Startup: mongo: Unable to initialize module
Module compiled with module API=20090626
PHP compiled with module API=20100525
These options need to match
Eu então fiz pecl uninstall mongo
e pecl install mongo
- que criou o novo arquivo mongo.so em 20090626 /
Eu sou meio novo em tudo isso, então espero que seja um erro cego e fácil de corrigir! Eu só preciso colocar o mongo de volta em funcionamento.
php5-dev
, desinstalar o mongo e reinstalar.Grandes mentes pensam da mesma forma, womble postou momentos depois que eu descobri o que estava acontecendo. Sua resposta está correta e, antes da minha, é o que aceitarei como resposta, mas para referência futura, a solução foi a seguinte:
E, é claro, o mongo.so já estava no php.ini de uma maneira que o pecl não o removeu, tornando mais fácil a atualização.
fonte