1

私はたくさん試しましたが、mongoカートリッジと通信するopenshiftノードカートリッジの単純な平均アプリで、ノードをMongoに接続することができません。URL にアクセスすると、すべて問題なく動作しますが、アプリケーションでエラーが発生します (サービスが一時的に利用できないというエラー) 。

適切な環境変数を使用しました。インスタンスに ssh してローカルで mongo に接続するか、アプリのルートでノード サーバーを実行すると、すべて正常に動作します。

しかし、それを git push すると、ビルド、デプロイなどは正常に機能しますが、アプリケーション URL に移動するとエラーが発生します。助けてください。コマンドラインで「ノードサーバー」を使用して、コードがローカルおよびレポディレクトリのopenshiftサーバーで正常に機能するため、何が問題なのかわかりません。

==============================
    **server.js**
    =========
    #!/bin/env node
    //  OpenShift sample Node application

    process.env.NODE_ENV = process.env.NODE_ENV || 'development';

    // Load the module dependencies
    var mongoose = require('./config/mongoose'),
        express = require('./config/express'),
        passport = require('./config/passport');



    // Create a new Mongoose connection instance
    var db = mongoose();

    // Create a new Express application instance
    var app = express();

    // Configure the Passport middleware
    var passport = passport();

    var ipaddress = process.env.OPENSHIFT_NODEJS_IP || 'localhost';
    var port      = process.env.OPENSHIFT_NODEJS_PORT || 8080;

    app.listen(port, ipaddress, function() {
                console.log('%s: Node server started on %s:%d ...',
                            Date(Date.now() ), ipaddress, port);
            });

    // Use the module.exports property to expose our Express application instance for external usage
    module.exports = app;

    ===========================

    development.js
    ==============
    // Invoke 'strict' JavaScript mode
    'use strict';


    var dbDefault = process.env.OPENSHIFT_MONGODB_DB_URL + process.env.OPENSHIFT_APP_NAME  || 'mongodb://localhost:27017/someapp'; 

    // Set the 'development' environment configuration object
    module.exports = {
        db : dbDefault ,
        sessionSecret: 'developmentSessionSecret'
    };


     ================================

    mongoose.js
    ===========

    // Invoke 'strict' JavaScript mode
    'use strict';

    // Load the module dependencies
    var config = require('./config'),
        mongoose = require('mongoose');

    // Define the Mongoose configuration method
    module.exports = function() {
        // Use Mongoose to connect to MongoDB 

        var db = mongoose.connect(config.db);


        // Load the application models 
        require('../app/core/models/user.server.model');



        // Return the Mongoose connection instance
        return db;
    };
    ===========================



    logs - node
    Error: connect ECONNREFUSED
        at errnoException (net.js:901:11)
        at Object.afterConnect [as oncomplete] (net.js:892:19)
    DEBUG: Program node server.js exited with code 8
    DEBUG: Starting child process with 'node server.js'
4

0 に答える 0