I have simple node js http server.
var http = require("http");
http.createServer(function(request, response) {
response.writeHead(200, {"Content-Type": "text/plain"});
response.write("Hello World");
response.end();
}).listen(8888);
If I run
node basicserver.js
I get
node.js:201
throw e; // process.nextTick error, or 'error' event on first tick
^
Error: listen EADDRINUSE
at errnoException (net.js:642:11)
at Array.0 (net.js:743:26)
at EventEmitter._tickCallback (node.js:192:40)
I have seen this post, but that post seems to be specific to TCP server and not http server. Could anyone please help.
The port you are listening to is already being listened by another process. In this case I got a feeling that it is your self. You can do a
ps aux | grep nodeand then usingkill <pid>kill your node process. Beside that you can also try another port.–Update–
In case if you want to find which process is listening, you can use
netstat -lpn(-lis to find out the listening ports,-pis to include the process name and pid,-nis to not to resolve host names, or else it will be slow), to find the processes that are listening on different ports. If there was too many, you can donetstat -lnp | grep :8888.Also can use,
fuser 8888/tcp, which will show you the process pid and also adding-kwill kill the process, fastest way ever.I realized this two commands only work in linux.