最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Node.js 在 Windows Server 上的離線(xiàn)部署方案詳解

 更新時(shí)間:2025年08月21日 09:22:19   作者:超齡超能程序猿  
Node.js在Windows Server離線(xiàn)部署需提前準(zhǔn)備N(xiāo)ode.js安裝包、項(xiàng)目依賴(lài)及編譯工具,本地安裝環(huán)境,配置項(xiàng)目目錄,使用pm2注冊(cè)服務(wù)并確保開(kāi)機(jī)自啟,最終驗(yàn)證端口與依賴(lài)兼容性,本文給大家介紹Node.js 在 Windows Server 上的離線(xiàn)部署方案,感興趣的朋友跟隨小編一起看看吧

Node.js 在 Windows Server 上的離線(xiàn)部署方案

離線(xiàn)部署的核心是提前準(zhǔn)備所有依賴(lài)資源(避免在線(xiàn)下載),并通過(guò)本地配置完成服務(wù)搭建,整體分為「依賴(lài)準(zhǔn)備」「環(huán)境配置」「項(xiàng)目部署」「服務(wù)注冊(cè)」4個(gè)階段。

一、提前準(zhǔn)備離線(xiàn)資源(關(guān)鍵:在有網(wǎng)機(jī)器操作)

需準(zhǔn)備 3 類(lèi)核心資源,確保無(wú)網(wǎng)環(huán)境下可完整安裝:

資源類(lèi)型獲取方式注意事項(xiàng)
Node.js 離線(xiàn)安裝包1. 訪(fǎng)問(wèn) Node.js 官網(wǎng)
2. 選擇對(duì)應(yīng)版本(建議 LTS 版,如 20.x)
3. 下載 Windows 離線(xiàn)包(msizip,優(yōu)先 msi 自動(dòng)配置環(huán)境變量)
確認(rèn) Windows Server 系統(tǒng)架構(gòu)(32/64 位),下載對(duì)應(yīng)版本。
項(xiàng)目依賴(lài)包(node_modules)1. 在有網(wǎng)機(jī)器上,拷貝項(xiàng)目源碼到本地
2. 執(zhí)行 npm install --production(只裝生產(chǎn)依賴(lài),減小體積)
3. 壓縮生成的 node_modules 文件夾
確保有網(wǎng)機(jī)器與 Windows Server 系統(tǒng)架構(gòu)一致(避免依賴(lài)編譯后不兼容,如 node-gyp 相關(guān)包)。
可選:編譯依賴(lài)環(huán)境若項(xiàng)目依賴(lài)需編譯(如 sqlite3 bcrypt),需提前下載:
1. Python 離線(xiàn)安裝包
2. Visual Studio Build Tools 離線(xiàn)包
離線(xiàn)安裝時(shí),需先裝 Python + Build Tools,再解壓 node_modules(或執(zhí)行本地依賴(lài)安裝)。

二、Windows Server 環(huán)境配置(無(wú)網(wǎng)機(jī)器操作)

1. 安裝 Node.js 環(huán)境

  1. 將下載的 Node.js msi 包拷貝到 Windows Server,雙擊運(yùn)行安裝;
  2. 安裝向?qū)е?,勾選「Add to PATH」(自動(dòng)配置環(huán)境變量,無(wú)需手動(dòng)改),其余默認(rèn)下一步;
  3. 驗(yàn)證安裝:打開(kāi)「命令提示符(CMD)」,執(zhí)行以下命令,顯示版本即成功:
    node -v  # 如 v20.11.0
    npm -v   # 如 10.2.4
    
    • 若用 zip 包:解壓到指定目錄(如 D:\Node.js),手動(dòng)添加 D:\Node.jsD:\Node.js\node_global 到「系統(tǒng)環(huán)境變量-PATH」,再驗(yàn)證版本。

2. 配置項(xiàng)目目錄

  1. 在 Windows Server 上創(chuàng)建項(xiàng)目目錄(如 D:\NodeProjects\your-app);
  2. 拷貝以下文件到該目錄:
    • 項(xiàng)目源碼(app.js/server.js 入口文件、package.json、配置文件等);
    • 提前壓縮的 node_modules 文件夾,解壓到項(xiàng)目根目錄(與 package.json 同級(jí))。

三、項(xiàng)目部署與測(cè)試

1. 本地啟動(dòng)測(cè)試(驗(yàn)證項(xiàng)目可運(yùn)行)

  1. 打開(kāi) CMD,進(jìn)入項(xiàng)目目錄:
    cd D:\NodeProjects\your-app
  2. 執(zhí)行啟動(dòng)命令(根據(jù)項(xiàng)目入口文件調(diào)整,如 app.js):
    node app.js
  3. 驗(yàn)證服務(wù):
    • 本地驗(yàn)證:在 Server 上打開(kāi)瀏覽器,訪(fǎng)問(wèn) http://localhost:端口號(hào)(如 http://localhost:3000),若返回正常頁(yè)面/API 結(jié)果,說(shuō)明項(xiàng)目可運(yùn)行;
    • 局域網(wǎng)驗(yàn)證:在同一局域網(wǎng)機(jī)器上,訪(fǎng)問(wèn) http://Windows Server IP:端口號(hào)(如 http://192.168.1.100:3000),確保端口未被防火墻攔截(需開(kāi)放端口,見(jiàn)下文「故障排查」)。

2. 解決端口占用問(wèn)題(可選)

若啟動(dòng)時(shí)報(bào)「端口被占用」,執(zhí)行以下命令排查并釋放:

  1. 查看端口占用情況(以端口 3000 為例):
    netstat -ano | findstr ":3000"
  2. 找到 PID(最后一列數(shù)字),結(jié)束對(duì)應(yīng)進(jìn)程:
    taskkill /F /PID 1234  # 1234 替換為實(shí)際 PID

四、注冊(cè) Windows 服務(wù)(實(shí)現(xiàn)后臺(tái)運(yùn)行+開(kāi)機(jī)自啟)

直接用 node app.js 啟動(dòng)后,關(guān)閉 CMD 服務(wù)會(huì)停止,需將 Node 項(xiàng)目注冊(cè)為 Windows 系統(tǒng)服務(wù),推薦用 pm2(輕量且支持 Windows 服務(wù))。

1. 離線(xiàn)安裝 pm2(提前在有網(wǎng)機(jī)器準(zhǔn)備)

  1. 在有網(wǎng)機(jī)器上,執(zhí)行 npm install pm2 -g(全局安裝 pm2);
  2. 找到 pm2 安裝目錄(默認(rèn)路徑:C:\Users\用戶(hù)名\AppData\Roaming\npm\node_modules\pm2);
  3. pm2 文件夾壓縮,拷貝到 Windows Server 的 Node 全局模塊目錄(默認(rèn):C:\Users\用戶(hù)名\AppData\Roaming\npm\node_modules\),解壓覆蓋。

2. 用 pm2 管理 Node 服務(wù)

  1. 進(jìn)入項(xiàng)目目錄,執(zhí)行啟動(dòng)命令(指定入口文件,如 app.js):
    pm2 start app.js --name "your-app-name"  # --name 自定義服務(wù)名,方便管理
  2. 驗(yàn)證 pm2 服務(wù)狀態(tài):
    pm2 list  # 查看服務(wù)列表,狀態(tài)為 "online" 即正常

3. 注冊(cè)為 Windows 系統(tǒng)服務(wù)(開(kāi)機(jī)自啟)

  1. 執(zhí)行 pm2 服務(wù)安裝命令:
    pm2-service-install  # 彈出提示,直接按 Enter 確認(rèn)(默認(rèn)服務(wù)名 PM2)
  2. 驗(yàn)證系統(tǒng)服務(wù):
    • 打開(kāi)「控制面板 → 管理工具 → 服務(wù)」;
    • 找到「PM2」服務(wù),確認(rèn)「啟動(dòng)類(lèi)型」為「自動(dòng)」,「狀態(tài)」為「正在運(yùn)行」。

五、部署驗(yàn)證與故障排查

1. 最終驗(yàn)證

  • 重啟 Windows Server,檢查「PM2」服務(wù)是否自動(dòng)啟動(dòng);
  • 訪(fǎng)問(wèn) http://Server IP:端口號(hào),確認(rèn)項(xiàng)目正常響應(yīng)。

2. 常見(jiàn)問(wèn)題解決

問(wèn)題現(xiàn)象排查方向
服務(wù)啟動(dòng)后無(wú)法訪(fǎng)問(wèn)1. 檢查端口是否開(kāi)放(Windows 防火墻 → 高級(jí)設(shè)置 → 入站規(guī)則,添加端口允許)
2. 確認(rèn)項(xiàng)目監(jiān)聽(tīng)地址不是 127.0.0.1(需改為 0.0.0.0,允許外部訪(fǎng)問(wèn))。
依賴(lài)報(bào)錯(cuò)(如 “module not found”)1. 檢查 node_modules 是否完整(對(duì)比有網(wǎng)機(jī)器的文件夾大?。?br />2. 若依賴(lài)需編譯,確認(rèn)已安裝 Python + Build Tools。
PM2 服務(wù)啟動(dòng)失敗1. 查看 PM2 日志:pm2 logs
2. 檢查 Windows 事件查看器(「Windows 日志 → 應(yīng)用程序」),定位錯(cuò)誤原因。

總結(jié)

離線(xiàn)部署的關(guān)鍵是提前規(guī)避“在線(xiàn)依賴(lài)”:所有 Node 環(huán)境、項(xiàng)目依賴(lài)、工具(如 pm2)都需在有網(wǎng)環(huán)境打包,再拷貝到 Windows Server;通過(guò) pm2 注冊(cè)系統(tǒng)服務(wù),確保服務(wù)穩(wěn)定運(yùn)行且開(kāi)機(jī)自啟,最后驗(yàn)證端口和依賴(lài)兼容性即可完成部署。

到此這篇關(guān)于Node.js 在 Windows Server 上的離線(xiàn)部署方案詳解的文章就介紹到這了,更多相關(guān)Node.js 離線(xiàn)部署內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • NodeJs生成sitemap站點(diǎn)地圖的方法示例

    NodeJs生成sitemap站點(diǎn)地圖的方法示例

    這篇文章主要介紹了NodeJs生成sitemap站點(diǎn)地圖的方法示例,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2019-06-06
  • docker中編譯nodejs并使用nginx啟動(dòng)

    docker中編譯nodejs并使用nginx啟動(dòng)

    這篇文章主要介紹了docker中編譯nodejs并使用nginx啟動(dòng)的相關(guān)資料,需要的朋友可以參考下
    2017-06-06
  • 搭建一個(gè)nodejs腳手架的方法步驟

    搭建一個(gè)nodejs腳手架的方法步驟

    這篇文章主要介紹了如何搭建一個(gè)nodejs腳手架的方法步驟,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2019-06-06
  • Node.js文件操作方法匯總

    Node.js文件操作方法匯總

    本文給大家匯總了node.js實(shí)現(xiàn)文件操作的方法,非常的細(xì)致全面,希望大家能夠喜歡
    2016-03-03
  • nvm使用和nodejs切換版本詳細(xì)圖文教程

    nvm使用和nodejs切換版本詳細(xì)圖文教程

    nvm 是node version manager(node 版本管理工具)的縮寫(xiě),是一個(gè)命令行工具,用于管理和切換到不同版本的 node.js,下面這篇文章主要給大家介紹了關(guān)于nvm使用和nodejs切換版本的相關(guān)資料,需要的朋友可以參考下
    2024-04-04
  • Node.js基礎(chǔ)模塊babel使用詳解

    Node.js基礎(chǔ)模塊babel使用詳解

    這篇文章主要介紹了Node.js基礎(chǔ)模塊babel使用詳解,babel是由一系列的組件構(gòu)成,所以我們?cè)陂_(kāi)發(fā)過(guò)程中,要從自行配置組件來(lái)開(kāi)始使用babel的功能
    2022-06-06
  • npm?ERR!Cannot?read?properties?of?null(reading?'pickAlgorithm')報(bào)錯(cuò)問(wèn)題解決

    npm?ERR!Cannot?read?properties?of?null(reading?'p

    這篇文章主要給大家介紹了關(guān)于npm?ERR!Cannot?read?properties?of?null(reading?'pickAlgorithm')報(bào)錯(cuò)問(wèn)題的解決方法,文中通過(guò)圖文介紹的非常詳細(xì),需要的朋友可以參考下
    2023-03-03
  • 深入解析Nodejs中的大文件讀寫(xiě)

    深入解析Nodejs中的大文件讀寫(xiě)

    這篇文章主要介紹了深入解析Nodejs中的大文件讀寫(xiě),文章圍繞主題展開(kāi)詳細(xì)的內(nèi)容介紹,具有一定的參考價(jià)值,需要的小伙伴可以參考一下
    2022-09-09
  • 深入理解Nodejs Global 模塊

    深入理解Nodejs Global 模塊

    本篇文章主要介紹了深入理解Nodejs Global 模塊,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2017-06-06
  • mac中利用NVM管理不同node版本的方法詳解

    mac中利用NVM管理不同node版本的方法詳解

    這篇文章主要給大家介紹了關(guān)于在mac中利用NVM管理不同node版本的相關(guān)資料,文中詳細(xì)介紹了nvm的安裝和卸載、nvm安裝node的方法,以及nvm如何管理node版本,需要的朋友可以參考借鑒,下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧。
    2017-11-11

最新評(píng)論

东平县| 穆棱市| 北川| 鄱阳县| 巴马| 尚志市| 荣昌县| 会理县| 临猗县| 昂仁县| 海林市| 涿鹿县| 杭锦后旗| 大荔县| 广南县| 陇南市| 宜君县| 钦州市| 宁乡县| 江川县| 镶黄旗| 怀仁县| 邛崃市| 九寨沟县| 游戏| 绥江县| 永春县| 天峻县| 尼勒克县| 霍城县| 乌什县| 忻城县| 天气| 美姑县| 定南县| 邛崃市| 遂昌县| 凤凰县| 邹平县| 广德县| 邛崃市|