首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >错误:侦听EACCES:权限被拒绝0.0.0.0:3001

错误:侦听EACCES:权限被拒绝0.0.0.0:3001
EN

Stack Overflow用户
提问于 2020-06-22 05:54:11
回答 3查看 6.2K关注 0票数 6

我在这里经历了许多答案,没有一个能纠正我的错误。这是我迄今所尝试过的。

环境:

代码语言:javascript
运行
复制
win 10 pro v2004 build 19041.29

node v12.14.1

  1. 使用netstat -a -b查看其他进程是否正在使用该端口。没有进程正在使用此端口,也尝试将端口切换到3000以获得相同的错误。

  1. I使用桌面和wsl2,所以也逐一禁用了所有虚拟网络适配器.在杀死所有其他码头服务后尝试过。

  1. 重新启动了pc.

作为administrator,

  1. 尝试通过powershell运行npm start

Server.js

代码语言:javascript
运行
复制
const app = require('./src/app');

const port = process.env.PORT || 3000;
app.listen(port, () => {
  console.log(`Litening on port ${port}...`);
});

错误:

代码语言:javascript
运行
复制
events.js:200
      throw er; // Unhandled 'error' event
      ^

Error: listen EACCES: permission denied 0.0.0.0:3001
    at Server.setupListenHandle [as _listen2] (net.js:1289:21)
    at listenInCluster (net.js:1354:12)
    at Server.listen (net.js:1442:7)
    at Function.listen (C:\Users\sujeet\project\node_modules\express\lib\application.js:618:24)
    at Object.<anonymous> (C:\Users\sujee\CustomerAPIs\server.js:4:5)
    at Module._compile (internal/modules/cjs/loader.js:955:30)
    at Object.Module._extensions..js (internal/modules/cjs/loader.js:991:10)
    at Module.load (internal/modules/cjs/loader.js:811:32)
    at Function.Module._load (internal/modules/cjs/loader.js:723:14)
    at Function.Module.runMain (internal/modules/cjs/loader.js:1043:10)
    at internal/main/run_main_module.js:17:11
Emitted 'error' event on Server instance at:
    at emitErrorNT (net.js:1333:8)
    at processTicksAndRejections (internal/process/task_queues.js:81:21) {
  code: 'EACCES',
  errno: 'EACCES',
  syscall: 'listen',
  address: '0.0.0.0',
  port: 3001
}
EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2022-01-22 10:54:23

Windows用户应遵循以下步骤:

确保PowerShell作为管理员运行。

使用以下命令停止winnat:net stop winnat

使用以下命令重新启动winnat:net start winnat

票数 20
EN

Stack Overflow用户

发布于 2020-07-27 21:51:22

Windows似乎改变了它的默认动态端口范围。

可以使用此命令检查动态端口范围。

代码语言:javascript
运行
复制
netsh int ipv4 show dynamicport tcp

如果要使用的端口在此范围内,则可以使用以下命令更改该端口

代码语言:javascript
运行
复制
netsh int ipv4 set dynamic tcp start=10000 num=10000

您可以更改开始端口号和所需端口数。

别忘了在更改后重新启动计算机。

票数 3
EN

Stack Overflow用户

发布于 2020-06-22 16:59:48

可能是其他程序正在使用该端口。尝试将termianl作为管理员运行,并尝试重新启动系统。如果问题仍然存在,可以找到一种方法来终止在端口上运行的进程。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/62508193

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档