You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Node.js应用通过IIS运行时出现0.0.0.0:8082权限拒绝错误

Node.js应用在IIS中运行时出现端口权限拒绝问题

问题描述

测试Node.js应用时,通过npm start命令启动完全正常,但部署到IIS运行时抛出错误:Error: listen EACCES: permission denied 0.0.0.0:8082。已尝试以下操作但问题未解决:

  • 为应用程序池添加IUSER、IIS_USER、Network Service和Everyone权限
  • 执行net stop winnat、net start winnat命令并重启主机网络服务

运行情况对比

命令行运行情况

C:\sites\test>npm start
node-open-ai@1.0.0 start
node index.js
Server started on port 8082

IIS运行错误日志

Application has thrown an uncaught exception and is terminated:
Error: listen EACCES: permission denied 0.0.0.0:8082
at Server.setupListenHandle [as _listen2] (node:net:1881:21)
at listenInCluster (node:net:1946:12)
at Server.listen (node:net:2044:7)
at Function.listen (C:\sites\dev-node-open-ai\node_modules\express\lib\application.js:635:24)
at Object. (C:\sites\dev-node-open-ai\index.js:60:5)
at Module._compile (node:internal/modules/cjs/loader:1358:14)
at Module._extensions..js (node:internal/modules/cjs/loader:1416:10)
at Module.load (node:internal/modules/cjs/loader:1208:32)
at Module._load (node:internal/modules/cjs/loader:1024:12)
at Module.require (node:internal/modules/cjs/loader:1233:19)

可能的解决方案

  • 检查端口占用:执行netstat -ano | findstr :8082命令,确认8082端口是否被其他进程占用,若被占用可更换端口或停止对应进程
  • 授予端口监听权限:运行netsh http add urlacl url=http://0.0.0.0:8082/ user="IIS APPPOOL\你的应用程序池名称",为应用程序池账户添加该端口的监听权限
  • 确认应用程序池身份:检查应用程序池的运行身份,可临时将身份设置为LocalSystem测试(生产环境需谨慎使用),确认是否因权限不足导致问题
  • 验证防火墙设置:检查Windows防火墙是否阻止Node.js进程监听8082端口,可临时关闭防火墙测试是否恢复正常
  • 检查文件系统权限:确保应用程序目录及所有文件对应用程序池运行账户拥有读取和执行权限

内容的提问来源于stack exchange,提问作者Goutham Kamre

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.23 18:42:06