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

问题描述:

原本项目运行的好好的,搬了一次办公室(电脑主机一块儿搬的),次日的时候就登陆不了了。php

php版本和扩展没有改变,且没有修改任何配置,我尝试重启php5-fpm 服务,又重启nginx服务,再登陆仍是老样子。nginx

报错以下:mongodb

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了。yii2

这个方法不必定适用于其余状况。yii

假如扩展没有被注释仍是报错,能够尝试如下思路:spa

 

解决思路:

查看php已安装的扩展:rest

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服务才有效果。code

sudo service php5-fpm restart 
相关文章
相关标签/搜索