简体   繁体   中英

Node.js OpenShift EACCESS error

I can't get the app to start properly, constantly getting EACCESS error:

Error: listen EACCES

Here's the code:

var server_port = process.env.OPENSHIFT_NODEJS_PORT || 8080
var server_ip_address = process.env.OPENSHIFT_NODEJS_IP || '127.0.0.1'

var app = require('express')();
var server = require('http').Server(app);
var io = require('socket.io')(server);

server.listen(server_port);

app.get('/', function (req, res) {
    res.sendfile(__dirname + '/index.html');
});

io.on('connection', function (socket) {
    socket.emit('news', { hello: 'world' });
    socket.on('my other event', function (data) {
        console.log(data);
    });
});

Nothing special here, OpenShift's Node variables are used in a right way.

server_ip_address should be used. Otherwise, it uses default IP on OpenShift, which is 127.0.0.1. Change from:

server.listen(server_port);

to:

server.listen(server_port, server_ip_address);

or

server.listen(server_port, server_ip_address, function() {
  console.log('%s: Node server started on %s:%d ...',
             new Date(), server_ip_address, server_port);
});

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM