Node.js 端口 3000 已经在使用,但实际上不是?

新手上路,请多包涵

我已经使用 node.js 项目工作了几个星期,它一直运行良好。通常,我使用 npm start 运行我的应用程序并在本地主机上的浏览器中查看它,端口 3000。

今天,我在使用 npm start 时开始出现以下错误:

Server started on port 3000
Port 3000 is already in use

我检查了资源监视器,但在端口 3000 上没有运行其他进程。为什么会收到此错误消息?

在我的 app.js 中,我有以下代码来设置端口……这是不正确的吗?它以前工作得很好,所以我不确定我做错了什么。

// Set Port
app.set('port', (process.env.PORT || 3000));
app.listen(app.get('port'), function() {
    console.log('Server started on port '+app.get('port'));
});

谢谢您的帮助!


编辑:

我尝试运行 netstat 和 TCPView 来检查哪个进程正在使用该端口,但没有使用该端口。我也尝试重新启动我的笔记本电脑,但我仍然得到同样的错误。

原文由 user2573690 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 1.2k
1 个回答

您可以搜索如何终止该进程。

对于 Linux/Mac OS 搜索 (sudo) run 在终端中:

 $ lsof -i tcp:3000
$ kill -9 PID

在 Windows 上:

 netstat -ano | findstr :3000
tskill typeyourPIDhere

在 git bash 中更改 tskill taskkill

原文由 Animesh Singh 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题