Node.JS 事件错误
Node.JS event error
我刚刚将服务器迁移到 Amazon EC2。
Node.JS 之前工作正常,但自从搬家后,它给了我一个事件错误,我不太确定发生了什么。
i 运行命令netstat -nlp查看端口号是否打开
端口号已打开(8080 和 8181)。
它在行 89:7 上给出了以下错误:
https.listen(port, function(){
console.log('HTTPS Server listening at port: ' + port);
});
EADDRINUSE
表示 "error - address in use"。您需要停止已经侦听该地址的服务(阅读:IP 和端口组合)。您可以使用 lsof
:
发现该服务的 pid 和名称
sudo lsof -Pan -i tcp | grep -E '(8080|8181)'
即在我的本地机器上:
$ sudo lsof -Pan -i tcp | grep -E '(51235)'
java 12413 andy 669u IPv4 1088377 0t0 TCP *:51235 (LISTEN)
pid(进程 ID)是第二个数字 - 在本例中为 12413
。这可以用来终止进程。
使用kill 12413
终止该进程。另一个 lsof
显示该端口上没有任何监听,因为它已被杀死:
$ sudo lsof -Pan -i tcp | grep -E '(51235)'
<nothing here>
$
可能是您已经获得了另一项服务 运行(HTTP 代理倾向于在 8080 上侦听),或者可能是同一应用的其他版本。如果那里有代理 运行,您可能必须决定是使用不同的端口还是移动当前服务。
我刚刚将服务器迁移到 Amazon EC2。
Node.JS 之前工作正常,但自从搬家后,它给了我一个事件错误,我不太确定发生了什么。
i 运行命令netstat -nlp查看端口号是否打开
端口号已打开(8080 和 8181)。
它在行 89:7 上给出了以下错误:
https.listen(port, function(){
console.log('HTTPS Server listening at port: ' + port);
});
EADDRINUSE
表示 "error - address in use"。您需要停止已经侦听该地址的服务(阅读:IP 和端口组合)。您可以使用 lsof
:
sudo lsof -Pan -i tcp | grep -E '(8080|8181)'
即在我的本地机器上:
$ sudo lsof -Pan -i tcp | grep -E '(51235)'
java 12413 andy 669u IPv4 1088377 0t0 TCP *:51235 (LISTEN)
pid(进程 ID)是第二个数字 - 在本例中为 12413
。这可以用来终止进程。
使用kill 12413
终止该进程。另一个 lsof
显示该端口上没有任何监听,因为它已被杀死:
$ sudo lsof -Pan -i tcp | grep -E '(51235)'
<nothing here>
$
可能是您已经获得了另一项服务 运行(HTTP 代理倾向于在 8080 上侦听),或者可能是同一应用的其他版本。如果那里有代理 运行,您可能必须决定是使用不同的端口还是移动当前服务。