我揣摩为什么PHP驱动程序无法连接到MongoDB的PHP无法创建连接到MongoDB的
- PHP 5.3.16版(64位)
- 的MongoDB:MongoDB的-Linux的x86_64-2.4 0.3
OS:CentOS版本5.2(最终)
添加链接:
mongo -> mongodb-linux-i686-2.4.3
创建
data
文件夹:mkdir /home/max/mongo/data
发起蒙戈:
蒙戈/ bin中/ mongod的--dbpath =蒙戈/数据--fork --logpath的/ var/wefi /日志/ feederliteRC/mongodb的。日志
所有工作正常,可以连接mongoVUE监视器工具。 (从Windows7的)
现在,我尝试从PHP连接到BongoDB:
我安装的驱动程序为PHP:
sudo的PECL安装蒙戈
上:php -i | grep mongo
我得到:
mongo
mongo.allow_empty_keys => 0 => 0
mongo.chunk_size => 262144 => 262144
mongo.cmd => $ => $
mongo.default_host => localhost => localhost
mongo.default_port => 27017 => 27017
mongo.is_master_interval => 15 => 15
mongo.long_as_object => 0 => 0
mongo.native_long => 0 => 0
mongo.ping_interval => 5 => 5
OLDPWD => /usr/share/pear/doc/mongo
_SERVER["OLDPWD"] => /usr/share/pear/doc/mongo
我加到php.ini
(nano /etc/php.ini
):extension=mongo.so
并重新启动httpd
:/etc/init.d/httpd restart
从代码:
try {
// open connection to MongoDB server
$conn = new Mongo('localhost');
} catch (MongoConnectionException $e) {
die('Error connecting to MongoDB server');
} catch (MongoException $e) {
die('Error: ' . $e->getMessage());
}
PHP看到new Mongo
但我得到异常:"Error connecting to MongoDB server
。
奇怪的是,mongoDB运行PHP驱动程序,但它没有看到mongoDB。
有人可以帮助我,
[编辑]
“连接失败的MongoDB服务器错误连接到:本地主机:27017:连接被拒绝”
我是否需要添加smoething到php.ini
?
尝试增加$ E->的getMessage()到您的第一个catch块的输出(你打的那个),你可能知道问题是什么。 – leftclickben
谢谢,请参阅我的编辑 –
您的连接字符串错误,应该是'mongodb:// localhost'尝试看看它是否有所改进 – Sammaye