2013-08-11 15 views
8

Mam następujący kodBłąd: słuchać EACCES na Openshift aplikacji

var express = require('express') 
    , app = express() 
    , server = require('http').createServer(app) 
    , io  = require('socket.io').listen(server) 
    , connect = require('connect') 
    , pg  = require('pg') 
    , Client = pg.Client; 

// Setup express middleware 
app.use(express.static('public')); 
app.use(connect.logger()); 

// Start the server 
var port = process.env.OPENSHIFT_INTERNAL_PORT || 8080 
    , ip = process.env.OPENSHIFT_INTERNAL_IP || "127.0.0.1"; 
server.listen(port, ip); 

Ale kiedy zaczynają aplikacja automatycznie lub zacznę go ręcznie z węzła zawsze komunikat o błędzie: „ostrzegają: error Podbił: Error: słuchać EACCES”

zawartość package.json:

{ 
    "name"  : "test-app", 
    "version"  : "0.0.1-1-alpha", 
    "description" : "test-app", 
    "dependencies": { 
     "express" : "3.1.x", 
     "connect" : "*", 
     "socket.io" : "0.9.x", 
     "i18next" : "1.6.x", 
     "bower"  : "1.1.1", 
     "pg"  : "*" 
    }, 
    "engines": { 
     "node" : ">=0.10", 
     "npm" : "1.3.x" 
    }, 
    "scripts": { 
     "start" : "node app" 
    } 
} 

Co mogę zrobić, aby rozwiązać ten problem? Przykładowy plik server.js z openshift nie ma tego problemu, ale używa wyrażenia 2.x.

Odpowiedz

21

Wygląda na to, że używasz starych zmiennych środowiskowych. Wypróbuj:

// Start the server. 
var port = process.env.OPENSHIFT_NODEJS_PORT || 8080 
, ip = process.env.OPENSHIFT_NODEJS_IP || "127.0.0.1"; 
Powiązane problemy