如何在heroku上使用php和mongodb托管webapp?

时间:2015-01-10 08:36:48

标签: php mongodb heroku

这就是我尝试连接到heroku上的数据库的方式:

//db.php
$config = array( 
        'username' => 'username',
        'password' => 'password',
        'connection_string'=> sprintf('mongodb://%s:%d','EXAMPLE.herokuapp.com','27017')    
    );
$connection = new \MongoClient($config['connection_string']); 

当我推送到回购站并转到应用程序URL时,会显示以下错误消息: 无法连接到:EXAMPLE.herokuapp.com:27017 db.php中的连接被拒绝。

我应该如何格式化connection_string以便它不会给出错误消息?

1 个答案:

答案 0 :(得分:0)

Heroku上没有本地运行的MongoDB。

您需要在https://addons.heroku.com/#data-stores使用其中一个加载项,例如MongoLab。

运行时

$ heroku addons:add mongolab

它是为您配置的,并且环境中将有一个包含连接信息的配置变量:

$ heroku config | grep MONGOLAB_URI
MONGOLAB_URI => mongodb://heroku_app1234:random_password@ds029017.mongolab.com:29017/heroku_app1234

您可以从$_ENV['MONGOLAB_URI']getenv('MONGOLAB_URI')

中读取该内容
$connection = new \MongoClient(getenv('MONGOLAB_URI')); 
相关问题