Windows Server 2022部署Node.js接口的完整指南
结论先行
在Windows Server 2022上部署Node.js接口,需完成以下核心步骤:安装Node.js环境、配置IIS反向X_X(可选)、使用PM2守护进程,并确保防火墙和网络安全设置正确。以下是详细操作流程。
1. 安装Node.js环境
- 下载Node.js
访问Node.js官网,选择LTS版本(推荐v18.x+),下载Windows安装包(.msi)。 - 运行安装向导
默认选项即可,但需勾选 “Add to PATH” 以全局调用node和npm命令。 - 验证安装
打开PowerShell或CMD,执行以下命令:node -v # 查看Node.js版本 npm -v # 查看npm版本
2. 部署Node.js接口项目
步骤1:上传代码至服务器
- 通过FTP、Git克隆或直接复制文件到服务器目录(如
C:node-api)。 - 确保项目包含
package.json和入口文件(如app.js)。
步骤2:安装依赖
在项目目录下运行:
npm install
步骤3:测试运行
启动服务(假设入口文件为app.js):
node app.js
- 访问
http://localhost:3000(端口根据实际代码调整)测试接口是否正常响应。
3. 使用PM2守护进程(推荐)
为什么需要PM2?
Node.js默认运行在单进程中,崩溃后需手动重启。PM2提供进程守护、日志管理、负载均衡等功能。
安装与配置
- 全局安装PM2:
npm install pm2 -g - 启动项目并设为开机自启:
pm2 start app.js --name "node-api" pm2 save pm2 startup # 根据提示生成开机启动脚本
4. 配置IIS反向X_X(可选)
若需通过域名或80/443端口访问,可通过IIS的URL重写模块实现反向X_X。
步骤1:安装IIS和URL重写模块
- 在“服务器管理器”中添加IIS服务,并安装URL Rewrite模块。
步骤2:配置反向X_X规则
- 在IIS中创建新站点,绑定域名或端口。
- 在站点根目录下创建
web.config文件,添加以下规则(假设Node.js运行在3000端口):<configuration> <system.webServer> <rewrite> <rules> <rule name="NodeJS Proxy" stopProcessing="true"> <match url="(.*)" /> <action type="Rewrite" url="http://localhost:3000/{R:1}" /> </rule> </rules> </rewrite> </system.webServer> </configuration>
5. 防火墙与网络安全
- 放行端口
在“Windows Defender 防火墙”中允许入站规则(如3000、80、443)。 - HTTPS配置(可选)
使用Let’s Encrypt或购买SSL证书,在IIS中绑定HTTPS。
常见问题解决
- 端口冲突:修改Node.js代码中的监听端口,或关闭占用端口的程序。
- PM2进程崩溃:检查日志
pm2 logs,修复代码错误后重启服务。 - 权限不足:以管理员身份运行PowerShell或CMD。
总结
核心要点:
- Node.js环境 + PM2守护是稳定运行的基础。
- IIS反向X_X可简化域名和端口管理。
- 务必检查防火墙和网络安全配置。
按照上述步骤,即可在Windows Server 2022上高效部署Node.js接口,兼顾性能与可靠性。
云计算导航