2015-05-22 1 views
0

хорошо это действительно странно, я получаю EADDRINUSE при реализации простого сервера,я получаю EADDRINUSE при развертывании простого сервера узла

  1. я изменил порты
  2. поискал уже запущен узел JS процесс
  3. попытался использовать killall -9 узел с корнем
  4. ищет процесс накопительства порт через Судо NetStat -alpn | Grep узел

    var http= require('http'); 
    
    
    var server=http.createServer(function(request,response){ 
        response.end("kameha kameha...."); 
    }).listen("162.x.x.38",8010); 
    process.stdin.resume(); 
    process.on('uncaughtException',function(err){ 
    console.log("closing due to uncaught exception:"+err.message+"  "+err.data); 
        server.close(); 
        process.exit(1); 
    }); 
    process.on('exit',function(){ 
        console.log("exiting the program"); 
        server.close(); 
        process.exit(0); 
    }); 
    process.on('SIGINT', function(){ 
        console.log("caught cntrl +c closing the program and performing  cleanups"); 
        server.close(); 
        process.exit(0); 
    }); 
    

еще не помогает, я не бегу CentOS 6.7 на Система VPS размещенных на Bluehost, так пусть меня сумма вниз, не работает процесс узла, не prcocess не накапливают порт

как ни странно, когда я положил мой хозяин, как локальный он начинает работать, но до сих пор я не смог подключить его с помощью Wget

Wget локальный: 8010 --2015-05-22 15: 19: 15-- http://localhost:8010/ ... постановляющей локальный: : 1, 127.0.0.1 Подключение к localhost | :: 1 |: 8010 ... не удалось: соединение отклонено. Подключение к localhost | 127.0.0.1 |: 8010 ... не удалось: соединение отклонено.

при работе в качестве локального хоста NetStat дает следующее:

Судо NetStat -alp | Grep узел Unix 2 [ACC] STREAM ПРОСлУШИВАНИЕ 453187 23439/узел LOCALHOST

протокол, как указано на NETSTAT команды Unix вместо tcp, хотя у меня нет большого опыта работы с linux, поэтому ... но это странно, потому что выше код работает отлично в окнах, но я не знаю, что здесь происходит ..help please !!

+0

'/ etc/services' говорит, что 1080 для прокси-сервера socks. У вас есть что-то вроде этого, случайно? Также почему вы подключаетесь к 8010 с помощью wget и используете порт 1080 в коде узла? – Paul

+0

nopes и я сожалею, что исправил это в сообщении, но скопировал результаты из многих портов, которые я пытался, и я пробовал другие порты, но все равно получаю ту же самую ошибку – trashed

+0

попробуйте удалить адрес из 'listen (" 162.xx38 ", 8010); ' – vodolaz095

ответ

1

Параметры для http.listen() были назад.

С Node.js документы:

server.listen (порт [, имя хоста] [, накопившихся] [, обратный вызов]) # Begin принимать соединения на указанный порт и имя хоста. Если имя хоста опущено, сервер будет принимать соединения, направленные на на любой IPv4-адрес (INADDR_ANY).

Правильный вызов, по ссылке DOCS выше, заключается в следующем:

Простой, работает на любой адрес для хоста

var server=http.createServer(function(request,response){ 
    response.end("kameha kameha...."); 
    }).listen(8010); 

Bind на локальный только

var server=http.createServer(function(request,response){ 
    response.end("kameha kameha...."); 
    }).listen(8010, "127.0.0.1"); 

Привязка к 1.2.3.4 аналогична

var server=http.createServer(function(request,response){ 
    response.end("kameha kameha...."); 
    }).listen(8010, "1.2.3.4"); 
+0

haha ​​Я застрял часами с этой глупой штукой, я работал с узлом 0.10.2, который был предварительно установлен и выполнял var server = http.createServer (функция (запрос, ответ) { response.end ("kameha kameha. ... "); }). Listen ({host:" localhost ", port: 1080}); но произошла ошибка, так изменившаяся к вышеуказанному коду, но не искавшая порядок ..... моя неудачная благодарность помогла, это была глупая, но разочаровывающая ошибка :) – trashed

Смежные вопросы