zoukankan      html  css  js  c++  java
  • How to fix Error: listen EADDRINUSE while using nodejs

    If I run a server with the port 80, and I try to use xmlHTTPrequest i get this error: Error: listen EADDRINUSE

    Why is it problem for nodejs, if I want to do a request, while I run a server on the port 80? For the webbrowsers it is not a problem: I can surf on the internet, while the server is running.

    The server is:

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

    And the request:

    var xhr = new XMLHttpRequest();
    
    xhr.onreadystatechange = function() {
        sys.puts("State: " + this.readyState);
    
        if (this.readyState == 4) {
            sys.puts("Complete.
    Body length: " + this.responseText.length);
            sys.puts("Body:
    " + this.responseText);
        }
    };
    
    xhr.open("GET", "http://mywebsite.com");
    xhr.send();


    EADDRINUSE means that the port number which listen() tries to bind the server to is already in use.

    So, in your case, there must be running a server on port 80 already.

    If you have another webserver running on this port you have to put node.js behind that server and proxy it through it.

    You should check for the listening event like this, to see if the server is really listening:

    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);


    解决方案:
    What really helped for me was:
    
    killall -9 node
    But this will kill a system process.
    
    With
    
    ps ax
    you can check if it worked.
    

      



  • 相关阅读:
    实验五 shell脚本编程
    实验四 Linux系统C语言开发环境学习
    实验三 Linux系统用户管理及VIM配置
    实验二 Linux系统简单文件操作命令
    实验一 Linux系统与应用准备
    实验八 进程间通信
    实验七 信号
    实验六 进程基础
    实验五 shell脚本编程
    实验四 Linux系统搭建C语言编程环境
  • 原文地址:https://www.cnblogs.com/sddai/p/9388338.html
Copyright © 2011-2022 走看看