2

Mongo を Ubuntu Server 12.04 上の Apache2 を使用して PHP 5.3 で数時間動作させようとしています。

エラーが発生していました:

Fatal error: Class 'MongoClient' not found in /var/www/projects/learn/create.php on line 7

Mongo は に表示されましたが、 には表示されphp -mませんでしたphpinfo()。非常に長い検索の後、次のようにコメントしてみましたphp.ini

Default Value: E_ALL & ~E_NOTICE

これにより、Mongo がphpinfo()ステートメントに表示され、$m = new MongoClient()エラーはスローされません。唯一の問題は、エラー レポートをオンにする必要があることです (私は新しい開発者なので)。

詳細なエラー報告が有効になっている場合にのみ、Mongo がロードに失敗する原因は何ですか?

編集:また、個々のPHPファイルでエラーレポートをオンにして、Mongoをロードしながらエラーを適切に表示することにも注意してください

4

1 に答える 1

2

おそらく、mongo 拡張機能は開発/サーバーのセットアップにインストールされていません。最初にインストールされているかどうかを確認します。次の内容の phpinfo.php というファイルを作成します。

ブラウザから実行します。モンゴを探します。バージョンが何であるかを参照してください。存在しない場合は、コマンド ラインから次の操作を行います。

sudo pecl install モンゴ

ubuntu デスクトップ sudo gedit /etc/php5/conf.d/mongo.ini がある場合

ubuntu サーバー sudo vi /etc/php5/conf.d/mongo.ini がある場合

ファイルに次の行を挿入します: extension=mongo.so

ファイルを保存します。出口。sudo /etc/init.d/apache2 restart で apache を再起動します。

ubuntu で拡張機能をロード/アンロードするために php.ini ファイルを直接編集しないでください。/etc/php5/conf.d/ のファイルを変更します。

于 2013-02-19T12:52:39.680 に答える