# 手工部署Node.js（Windows）
#### 简介
本文介绍了如何在华为云上使用弹性云服务器的Windows实例部署Node.js。
Node.js是一个基于Chrome V8引擎的JavaScript运行环境，用于方便地搭建响应速度快、易于扩展的网络应用。Node.js使用事件驱动，非阻塞I/O模型而得以轻量和高效，非常适合在分布式设备上运行数据密集型的实时应用。
更多关于Node.js信息，请参见<https://nodejs.org>。
该操作以"Windows Server 2022"操作系统为例，使用的Node.js软件包版本为"node-v24.13.0-x64.msi"。
#### 前提条件
- 已创建弹性云服务器，创建过程请参考[自定义购买ECS](https://support.huaweicloud.com/usermanual-ecs/ecs_03_7002.html)。
- 弹性云服务器已绑定弹性公网IP，具体步骤参见[申请弹性公网IP](https://support.huaweicloud.com/usermanual-eip/eip_0008.html)。
 
#### 操作步骤
1. 远程连接到弹性云服务器。具体操作请参见[Windows ECS登录方式概述](https://support.huaweicloud.com/usermanual-ecs/zh-cn_topic_0092494943.html)。
2. 访问[Node.js](https://nodejs.org/en)官网，单击菜单栏Download，下载相应的安装包。
   图1下载安装包   
   ![](https://support.huaweicloud.com/bestpractice-ecs/zh-cn_image_0000002543969661.png "点击放大") 
3. 双击已下载的安装包，根据安装向导完成Node.js安装。
   图2安装Node.js   
   ![](https://support.huaweicloud.com/bestpractice-ecs/zh-cn_image_0000002512249754.png) 
4. 打开命令提示符（CMD）或Windows PowerShell窗口。 输入node -v和npm -v查看版本信息，如果出现如下图所示的信息，表示安装成功。
   图3查看版本   
   ![](https://support.huaweicloud.com/bestpractice-ecs/zh-cn_image_0000002543929675.png) 
5. 创建测试项目文件夹TestFolder与TXT文件test.txt。
   图4新建测试文件   
   ![](https://support.huaweicloud.com/bestpractice-ecs/zh-cn_image_0000002512409738.png "点击放大") 
6. 鼠标双击打开test.txt文件，并将以下内容复制粘贴到文件中。 您可以根据实际业务需要自行配置项目内容（res.end）、端口号（const port）等信息。本示例中，项目端口号为3000，输出的内容为Hello World。
   ```
   const http = require('http');
   const hostname = '0.0.0.0';
   const port = 3000;
   const server = http.createServer((req, res) => {
       res.statusCode = 200;
       res.setHeader('Content-Type', 'text/plain');
       res.end('Hello World\n');
   });
   server.listen(port, hostname, () => {
       console.log(`Server running at http://${hostname}:${port}/`);
   });
   ```
   
7. 修改test.txt文件的后缀名为test.js。
   图5修改文件后缀   
   ![](https://support.huaweicloud.com/bestpractice-ecs/zh-cn_image_0000002543969663.png "点击放大") 
8. 打开命令提示符（CMD）或PowerShell窗口。进入TestFolder目录后，输入npm init命令初始化项目。
   图6执行初始化   
   ![](https://support.huaweicloud.com/bestpractice-ecs/zh-cn_image_0000002512249756.png) 
9. 按照提示填写项目名称等主要信息，生成package.json文件。其他参数如不填写可以按回车键跳过。
   图7填写项目信息   
   ![](https://support.huaweicloud.com/bestpractice-ecs/zh-cn_image_0000002543929677.png "点击放大") 
10. 使用node test.js命令在本地运行Node.js项目。
    图8运行项目   
    ![](https://support.huaweicloud.com/bestpractice-ecs/zh-cn_image_0000002512409740.png) 
11. 在ECS实例的安全组中添加入方向规则，以放行项目中配置的项目端口号3000。为了增强安全性，建议仅放行需要访问的IP网段，避免将访问权限授予所有IPv4地址（即0.0.0.0/0）。具体步骤参见[为安全组添加安全组规则](https://support.huaweicloud.com/usermanual-vpc/zh-cn_topic_0030969470.html)。
12. 在本地Windows主机或其他任一具有公网访问能力的Windows主机中，打开浏览器并访问http://*ECS实例公网IP地址* *:* *项目端口号* 。本示例中项目端口号为3000。
    图9访问成功   
    ![](https://support.huaweicloud.com/bestpractice-ecs/zh-cn_image_0000002543969665.png)
    ![](https://support.huaweicloud.com/bestpractice-ecs/public_sys-resources/note_3.0-zh-cn.png)
    若项目无法访问，请检查云服务器安全组端口是否已放通或者查看windows系统防火墙状态是否已禁用。
    
 
