2016-06-12 18 views
-1

私は以下のようにnodejsサーバーコードを持っています。nodejsは8000では正常に動作しますが3000では正常に動作しません

サーバ1:完全に罰金作品私は2つの別々のEC2のインスタンスとfunnily十分にそれを実行しようとしています。

サーバー2:nodejsサーバーはリスニングを開始しません。コマンド "nodejs myfile.js"または "node myfile.js"を入力してリターンキーを押すと、何も起こりません。コマンドプロンプトが表示されます。

私は困惑しています。コードは次のように、メインファイル:

var express = require('express'), 
    bodyParser = require('body-parser'), 
    oauthserver = require('oauth2-server'); 
var controllernew = require('./controllers/controllernew'); 


var app = express(); 

app.use(bodyParser.json({limit: '50mb'})); 
app.use(bodyParser.urlencoded({limit: '50mb', extended: true})); 

app.get('/index.html', controllernew.index); 

app.oauth = oauthserver({ 
    model: require('./models/modeloauth'), 
    grants: ['password'], 
    debug: true, 
    accessTokenLifetime: 31536000 
}); 

app.get('/userOTP/:userid/username/:username', controllernew.getUserOTP); 

app.all('/oauth/token', app.oauth.grant()); 
app.all('*', app.oauth.authorise()); 

app.use(app.oauth.errorHandler()); 

routes = require("./routes/items")(); 
app.use(routes); 
var server = app.listen(3000, function(){ 
    console.log('server started at ' + server.address().port); 
}); 

index.htmlを要求するためのコントローラのインデックス機能のための小さな関数:

index: function(req, res, next){ 
    console.log("health check"); 
    res.write("All ok"); 
    res.end(); 
} 

私は2番目のサーバー上で何をしないのです、なぜコードの実行ではありません。ノードが正しくインストールされているかどうかを確認する方法はありますか?

+1

は、他のプロセスで使用されているポートですか? EC2で実行しているので、ポート3000のファイアウォールをブロック解除しましたか? – vijayst

+0

'lsof -iTCP:3000 -sTCP:LISTEN' - 端末が使用中のポートであるかどうかを確認するために実行します。 –

+0

そのポートがすでに使用されているようです。 –

答えて

0

最初の問題は解決され、私の終わりからかなり愚かな監視がこれを引き起こしていました。これが誰かを助ける場合に備えて、ソリューションを投稿する。

サーバーのEC2インスタンスがポート8080でのみ受信通信を受け付けていました。ポート3000とポート80を開いて問題を解決しました。

ただし、私のサーバーの2番目のインスタンスの問題はまだ開いています。

関連する問題