SORU
27 Mart 2012, Salı


nodejs Hata: EADDRİNUSE dinle

Eğer port 80 xmlHTTPrequest kullanmaya çalıştığım bir server kaçarsam ben bu hatayı alıyorum: Error: listen EADDRINUSE

Neden sorun için ise bağlantı noktasında bir server kaçarken, bir istek yapmak istiyorum, 80 nodejs mi? İnternette sörf yapabilirim, sunucu çalışırken. sorun değil webbrowsers için:

Sunucu:

  net.createServer(function (socket) {
    socket.name = socket.remoteAddress   ":"   socket.remotePort;
    console.log('connection request from: '   socket.remoteAddress);
    socket.destroy();
  }).listen(options.port);

Ve istek:

var xhr = new XMLHttpRequest();

xhr.onreadystatechange = function() {
    sys.puts("State: "   this.readyState);

    if (this.readyState == 4) {
        sys.puts("Complete.\nBody length: "   this.responseText.length);
        sys.puts("Body:\n"   this.responseText);
    }
};

xhr.open("GET", "http://mywebsite.com");
xhr.send();

CEVAP
27 Mart 2012, Salı


EADDRINUSE listen() sunucu bağlamak için çalışan bir port numarası zaten kullanılıyor demektir.

Yani senin durumunda, zaten bağlantı noktası 80 üzerinde çalışan bir sunucunuz olmalı.

Eğer başka bir Web sunucusu bu port üzerinde çalışan varsa o sunucunun arkasında node.js koyup üzerinden proxy.

Bu gibi listening olay için, sunucu gerçekten dinleme olup olmadığını görmek için kontrol etmelisiniz:

var http=require('http');

var server=http.createServer(function(req,res){
    res.end('test');
});

server.on('listening',function(){
    console.log('ok, server is running');
});

server.listen(80);

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Android Central

    Android Cent

    13 Kasım 2008
  • Bokeh

    Bokeh

    9 HAZİRAN 2014
  • MADFINGER Games a.s.

    MADFINGER Ga

    21 NİSAN 2009