exception 'yii\base\ErrorException' with message 'Class 'MongoClient' not found'


問題描述:

本來項目運行的好好的,搬了一次辦公室(電腦主機一起搬的),第二天的時候就登錄不了了。

php版本和擴展沒有改變,且沒有修改任何配置,我嘗試重啟php5-fpm 服務,又重啟nginx服務,再登錄還是老樣子。

報錯如下:

exception 'yii\base\ErrorException' with message 'Class 'MongoClient' not found' in /home/user/YiiProject/src/vendor/yiisoft/yii2-mongodb/Connection.php:247
Stack trace:
#0 [internal function]: yii\base\ErrorHandler->handleFatalError()
#1 {main}

 

解決方法:
$ sudo vi /etc/php5/mods-available/mongo.ini 

在mongo.ini里面檢查 extension = mongo.so 是否有被注釋掉,我的是被注釋掉了,因此不能正常加載mongo擴展,放開就可以了。然后再重啟php服務就OK了。

這個方法不一定適用於其他情況。

假如擴展沒有被注釋還是報錯,可以嘗試以下思路:

 

解決思路:

查看php已安裝的擴展:

php5 -m    //查看php 擴展,檢查是否有mongo模塊。如果沒有則需要安裝mongo擴展
php -i | grep 'Configuration File'      //查找php配置文件
Configuration File (php.ini) Path
=> /etc/php5/cli Loaded Configuration File => /etc/php5/cli/php.ini
sudo vi /etc/php5/cli/php.ini    //打開php配置文件,檢查是否有 extension=mongo.so

當修改了php配置文件,需要重啟php服務才有效果。

sudo service php5-fpm restart 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM