我已经按照http://php.net/manual/en/mongodb.installation.pecl.php上提供的官方文档使用pecl安装了MongoDB PHP库
我通过mongo shell创建了一个名为'ma‘的集合,其中包含两个文档'd1’和'd2‘。
我正在尝试通过以下文件连接到d1 : connect.php
<?php
require_once __DIR__ . "/vendor/autoload.php";
$client = new MongoDB\Client("mongodb://localhost:27017");
$collection = $client->ma->d1;
echo "Done\n";
echo $collection;
?>connect.php在我的终端上运行,并给出以下输出:
$ php connect.php
Done
ma.d1但是在浏览器上,它给出了这个错误:这个页面不工作,localhost当前不能处理这个请求。HTTP错误500
我的机器是64位Ubuntu 14.04 LTS。PHP版本: 5.5.9。MongoDB外壳和服务器版本: 3.6.2。Apache服务器版本: 2.4.7。
我确信驱动程序安装正确,因为我得到的是:
$ php --ri mongodb | grep version
MongoDB extension version => 1.4.0
libbson bundled version => 1.9.2
libmongoc bundled version => 1.9.2我是这个司机的新手。任何帮助都将不胜感激。
发布于 2018-02-10 15:37:28
您是否在apache使用的php.ini中添加了mongodb.so扩展指令?
查看此处:http://php.net/manual/en/mongodb.installation.manual.php
发布于 2018-02-10 16:38:33
在向php配置文件(在我的例子中是/etc/php5/cli/php.ini)添加extension = mongodb.so之后,您必须重新启动Apache服务器。
sudo killall apache2
sudo service apache2 restart此外,我不确定这是与MongoDB有关还是仅仅与Apache有关,但我在重启时收到了以下错误:"apache2:无法使用127.0.1.1.全局设置'ServerName‘指令来抑制此消息,无法可靠地确定服务器的完全限定域名。“
所以我遵循了这个答案:https://askubuntu.com/a/256018
最后,使用以下代码确保加载了扩展:
<?php
echo extension_loaded("mongodb") ? "loaded\n" : "not loaded\n";
?>https://stackoverflow.com/questions/48718363
复制相似问题