Node.js 虛擬主機

在 cPanel 點選建立 Node.js 應用程式,自選版本、一鍵 npm install,官網 PHP 與 Node.js 服務同一部主機、同一份年費。

🟩 Node.js 24/22/20 🚂 Express ⚛️ React + Vite 📦 npm 🔒 SSL終生免費 🛡️ WAF防禦

Node.js 虛擬主機是什麼?

Node.js 虛擬主機是可以直接執行 Node.js 伺服器程式的共享主機:在 cPanel 點選建立應用程式、選好 Node.js 版本、指定啟動檔,就能讓 Express 這類程式回應網域的請求。一般只支援 PHP 的主機,上傳 .js 檔只會被當成靜態檔案下載,不會在伺服器端執行。

瑪尼國際的 Linux 虛擬主機透過 CloudLinux 的應用程式選擇器提供 Node.js 執行環境,所以 Node.js 虛擬主機是 Linux 虛擬主機本來就附的能力:官網用 PHP 或 WordPress,旁邊用 Node.js 跑表單後端或 API,同一部主機、同一份年費。

在 cPanel 建立 Node.js 應用程式要幾個步驟?

四個步驟:建立應用程式、上傳程式、安裝套件、啟動。全部在 cPanel 的「Setup Node.js App」完成:

  1. 在 cPanel 開啟「Setup Node.js App」,選擇 Node.js 版本,指定應用程式目錄、要綁定的網域或子目錄,以及啟動檔(例如 app.js)。
  2. 把程式與 package.json 上傳到應用程式目錄,node_modules 不必上傳。
  3. 在介面按下「Run NPM Install」,依 package.json 安裝相依套件;也可以用 SSH 進入環境自行執行 npm 指令。
  4. 設定環境變數(例如資料庫密碼、API 金鑰)後重新啟動,網址就會交由您的程式回應。

每個應用程式各自選版本、各自安裝套件,一個專案升級不會影響另一個專案。

適合哪些 Node.js 專案?

「有人連線才執行」的網站與 API 最適合,前端框架的靜態輸出甚至不必建立應用程式。常見用途:

  • Express API 與表單後端:接收網站表單、寫入 MySQL、寄送通知信。
  • webhook 接收端:LINE、金流或第三方服務推送事件後的處理程式。
  • React/Vue/Next.js 靜態輸出:本機 build 完上傳 HTML、JS、CSS,任何方案都能直接放。
  • 串接 OpenAI、Gemini 等 API:主機只負責轉送與記錄,運算在對方雲端執行。

建議在本機完成 npm run build 這類建置流程,再上傳產出;在共享主機上跑建置會吃掉大量資源,也比較慢。

React + Vite 前端和 Express API 放同一個帳號,要怎麼配置?

兩種放法都可以:讓 Express 一起提供前端檔案(一支應用程式管全部),或前端放網站根目錄、Node.js 只負責 /api。不論哪一種,都在本機執行 npm run build,主機只負責安裝套件與執行;主機上已有 React 19 + Vite 前端搭配 Express 4、Node.js 22 的專案以第一種放法實際運作,已啟動狀態下首頁回應約 8 毫秒(2026 年 11 月主機本機量測,不含網路傳輸)。

放法目錄配置優點要注意
① Express 一起提供前端應用程式目錄放後端程式與 dist/,Node.js 應用程式綁定網域根目錄一支程式、一組設定;前後端同網域,不必設定跨網域(CORS)Express 要加 express.static 與「其餘網址回傳 index.html」的路由,而且要排在 API 路由後面
② 前端放根目錄、API 綁 /apidist/ 內容上傳到 public_html,Node.js 應用程式的網址設為 /api靜態檔由網頁伺服器直接提供,Node.js 行程閒置回收時,首頁開啟速度不受影響React Router 的導回規則寫在 .htaccess;Express 的路由都要以 /api 開頭

第一種放法的 Express 程式重點如下(Express 4 寫法;Express 5 的萬用路由要改成 '/{*splat}'):

// app.cjs:cPanel「啟動檔」欄位指向這支
const path = require('path');
const express = require('express');
const app = express();

app.use('/api', require('./routes/api'));          // API 路由先註冊
app.use(express.static(path.join(__dirname, 'dist')));
app.get('*', (req, res) =>                         // 其餘網址交給 React Router
  res.sendFile(path.join(__dirname, 'dist', 'index.html')));

app.listen(process.env.PORT || 3000);              // 連接埠由主機自動指派

第二種放法的前端路由規則,放在 public_html 的 .htaccess:

RewriteEngine On
RewriteCond %{REQUEST_URI} !^/api
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^ index.html [L]

另外兩個細節:VITE_ 開頭的環境變數會在 build 時直接寫進前端 JavaScript,任何人打開瀏覽器都看得到,資料庫密碼、API 金鑰、JWT 簽章金鑰要放在 cPanel Node.js 應用程式的環境變數,由後端讀取;前端若不是放在網站根目錄,Vite 的 base 設定要跟著改。

Next.js 可以放在 Node.js 虛擬主機嗎?

看輸出方式:靜態匯出一定可以;需要伺服器端渲染的 standalone 模式可以執行,但閒置後第一次開啟較慢;重度使用 ISR、圖片即時最佳化的網站請改用 VPS。Next.js 15 需要 Node.js 18.18 以上、Next.js 16 需要 20.9 以上,主機的 Node.js 22、24 都符合。

輸出方式next.config 設定放在 Node.js 虛擬主機
靜態匯出output: "export",build 後產生 out/可以。上傳 out/ 內容即可,不必建立 Node.js 應用程式,任何方案都能放
standalone 伺服器output: "standalone",啟動檔為 .next/standalone/server.js可以執行。要記得把 public/ 與 .next/static/ 複製進 standalone 目錄;閒置回收後第一個請求要重新啟動整個 Next.js 伺服器
大量 ISR、圖片即時最佳化、常駐快取—建議改用 VPS 主機,讓行程常駐、記憶體可自行配置

Node.js 主機可以選哪些版本?新專案用哪一版?

可以選 Node.js 24、22 與 20,另外保留 6~12 給舊專案沿用;新專案建議用 Node.js 24。版本在 cPanel 建立應用程式時選擇,每個應用程式各自獨立:

版本瑪尼國際主機官方支援
Node.js 24(主機現為 24.22.2)可選(建議)LTS,到 2028 年 4 月
Node.js 22(主機現為 22.23.4)可選維護期 LTS,到 2027 年 4 月
Node.js 20(主機現為 20.20.2)可選2026 年 4 月已結束
Node.js 6、8、9、10、11、12可選,供暫時無法改寫的舊專案使用官方已停止支援

還在用 Node.js 20 的專案,建議在本機改用 24 執行 npm ci 與測試,沒問題再到 cPanel 建一個 24 版的應用程式切換,舊的應用程式先留著當退路;多數 Express 專案只需要重新安裝套件。

部署 Node.js 應用程式最常遇到的 3 個錯誤

上傳了本機的 node_modules、啟動檔格式不合、改完程式沒重新啟動,是開通後最常被問到的三種狀況。症狀與改法如下:

  1. 啟動時出現原生模組載入錯誤(例如 bcrypt、sharp):上傳了在 Windows 或 Mac 上安裝的 node_modules,裡面編譯好的檔案在 Linux 主機無法載入。刪掉主機上的 node_modules,按「Run NPM Install」讓主機依 package.json 重新安裝。
  2. 專案是 ES module,啟動檔載入失敗:package.json 設了 "type": "module" 時,若啟動檔載入出錯,可以另寫一個 .cjs 啟動檔(例如 app.cjs),在裡面用 import() 載入主程式,再把 cPanel 的啟動檔欄位指向它。
  3. 改了程式或環境變數,網站還是舊的:行程還在執行舊版本。在 cPanel 按「Restart」,或在應用程式目錄建立(或更新時間)tmp/restart.txt。

程式裡的 app.listen() 照常寫即可,主機會自動接手連接埠,不需要另外申請開 port。部署卡住時,把錯誤訊息透過線上客服傳給我們,協助判斷是程式還是環境的問題。

Node.js 虛擬主機年繳和兩年繳差多少?

選兩年期比連續年繳兩次便宜:基本型省 700 元、經濟型省 600 元、商務型省 4,000 元。依方案表的價格試算:

方案年繳兩次兩年期省下兩年期平均每月
基本型NT$7,000NT$6,300NT$700約 NT$263
經濟型NT$10,000NT$9,400NT$600約 NT$392
商務型NT$20,000NT$16,000NT$4,000約 NT$667

經濟型與商務型另有終生型,一次付 50,000 元,等於經濟型年繳 10 年、商務型年繳 5 年的費用。虛擬主機整體怎麼挑、能做什麼、搬家要注意哪些事,可以看虛擬主機完整指南。

Node.js 虛擬主機和 VPS 怎麼選?

程式只在有人連線時執行、不需要 root 權限,選 Node.js 虛擬主機(年繳 3,500 元起);需要常駐程式、大量 WebSocket 或 Docker,選 VPS(年繳 48,000 元起)。逐項對照:

比較項目Node.js 虛擬主機VPS 主機
年繳費用3,500 元起(兩年期 6,300 元)48,000 元起(4 vCPU/4 GB RAM)
管理方式cPanel 點選建立應用程式、選版本、npm install完整 root 權限,自行安裝 Node.js、PM2、Nginx
行程有請求才啟動,閒置會被回收常駐執行,可用 PM2 叢集
WebSocket 長連線少量可用,不適合大量即時連線適合聊天室、即時協作
Docker/系統套件不可可以
同帳號放 PHP 官網可以,同一份年費可以,需自行架設
適合Express API、表單後端、webhook、React + Vite 網站即時服務、背景佇列、需要自訂環境的系統

Node.js 虛擬主機的限制與替代方案

共享主機會回收閒置的應用程式行程,把資源留給同機的其他帳號,因此不適合常駐型的服務。下列情況請改用其他方案:

  • 需要 24 小時常駐的背景程式、佇列工作者(定時任務可改用 cPanel 的 Cron Jobs 排程執行)。
  • 大量長連線的 WebSocket 即時服務,例如聊天室、多人即時協作。
  • 需要 root 權限、Docker、PM2 叢集或自訂系統套件。

這些需求請看 VPS 主機(完整 root 權限)或實體主機。同樣的應用程式選擇器也支援 Python 虛擬主機與 Ruby 虛擬主機,三種語言可以在同一個帳號並存。版本需求請在簽約前告知,我們先確認主機上可選的版本再開通,來電 0800-670000。

主機客戶全部方案都有 AI 工作自動化支援:使用 Claude、Codex、ChatGPT 等工具,把整理資料、報表彙整、網站檢查這類重複工作交給 AI,諮詢與基本教學免費,實際開發或代建自動化流程依需求評估報價。

主機規格 基本型 經濟型 商務型
費用(一年) NT$3,500 NT$5,000 NT$10,000
費用(二年)兩年期優惠 NT$6,300 NT$9,400 NT$16,000
線上訂購 洽詢訂購 → 洽詢訂購 → 洽詢訂購 →
設定費 免設定費
免費 SSL 安全憑證(HTTPS) 終生免費,永遠在安全認證狀態
SEO 專業網路行銷優化 免費 SEO 優化 + 免費行銷服務
國際網址 內含(自備網址折 500) 贈送 贈送
硬碟空間(網站+Email) 不設配額上限 不設配額上限 不設配額上限
每月資料流量 1,000 GB 3,000 GB 不鎖頻寬・不限速
cPanel 建立 Node.js 應用程式 ✓ ✓ ✓
Node.js 版本自選 ✓ ✓ ✓
package.json 一鍵 npm install ✓ ✓ ✓
SSH 主機管理 ✓ ✓ ✓
MySQL 5.x ~ 9.4 ✓ ✓ ✓
PHP 4.x ~ 8.5 同帳號並存 ✓ ✓ ✓
CloudLinux 資源隔離 ✓ ✓ ✓
企業防毒防駭信箱 ✓ ✓ ✓
WAF 網站防禦系統 ✓ ✓ ✓
合理使用說明 本方案不預設空間與流量配額,超量不加價、不斷線;實際可用空間受主機實體容量限制。 僅在下列情況我們會先行聯繫協調,必要時調整方案: 一、惡意灌量,或影響同主機其他用戶的正常使用。
二、連續數月大幅超出方案常態用量。

常見問題

Node.js 虛擬主機費用多少?和 Linux 虛擬主機有什麼不同?

瑪尼國際的 Node.js 虛擬主機就是 Linux 虛擬主機方案,價格相同:基本型年繳 3,500 元(自備網址 3,000 元)、經濟型年繳 5,000 元、商務型年繳 10,000 元,兩年期分別為 6,300、9,400、16,000 元。三個方案都能在 cPanel 建立 Node.js 應用程式,差別在流量額度與可用資源。同一個帳號可以同時放 PHP 官網與 Node.js 服務,SSL 憑證終生免費,不另收年費。

Next.js、React 或 Vue 的網站可以放嗎?

要看網站是怎麼輸出的。React、Vue 或 Next.js 匯出成靜態檔案(npm run build 產生的 HTML、JS、CSS),任何方案直接上傳就能用,連 Node.js 應用程式都不必建立。需要伺服器端執行的部分,例如 Express 寫的 API、表單後端或伺服器端渲染,則在 cPanel 建立 Node.js 應用程式並指定啟動檔。建議先在本機完成 build,再把產出與必要的程式上傳,避免在共享主機上跑耗資源的建置流程。

Node.js 虛擬主機不適合做什麼?

共享主機適合網站、API、表單後端與 webhook 這類「有請求才執行」的服務。不適合的情況有:需要 24 小時常駐的背景程式或佇列工作者、大量長連線的 WebSocket 即時服務(例如聊天室、多人即時協作),以及需要 root 權限、Docker 或自訂系統套件的專案。這些情況請改看 VPS 主機。不確定屬於哪一種,可以來電 0800-670000,評估不收費。

Node.js 主機可以選哪些版本?

可以選 Node.js 24、22 與 20,另外保留 6~12 給舊專案沿用。新專案建議用 Node.js 24,屬於 LTS 版本,官方支援到 2028 年 4 月;Node.js 22 支援到 2027 年 4 月;Node.js 20 已在 2026 年 4 月結束官方支援,既有專案建議在本機改用 24 測試後再切換,多數 Express 專案只需要重新安裝套件。版本在 cPanel 建立應用程式時選擇,每個應用程式可以各自選不同版本。

React + Vite 前端加 Express 後端,可以放在 Node.js 虛擬主機嗎?

可以,這是 Node.js 虛擬主機最常見的用法,主機上已有 React 19 + Vite 前端搭配 Express 4 後端、Node.js 22 的專案實際運作。放法有兩種:一是由 Express 同時提供 API 與 Vite 建置出來的 dist 靜態檔,整個網站只有一支 Node.js 應用程式;二是把 dist 內容直接放在網站根目錄,Node.js 應用程式只綁定 /api。兩種都是在本機先執行 npm run build,主機只負責 npm install 與執行。前端用了 React Router 時,要讓找不到實體檔案的網址回傳 index.html,否則重新整理頁面會出現 404。

Next.js 可以放在 Node.js 虛擬主機嗎?

看輸出方式。設定 output: export 的靜態匯出,build 後把 out 資料夾上傳即可,連 Node.js 應用程式都不用建;設定 output: standalone 需要伺服器端渲染的網站,可以用 .next/standalone/server.js 當啟動檔執行,但閒置回收後第一個請求要重新啟動整個 Next.js 伺服器,等待時間比一般 Express 程式長。大量使用 ISR、圖片即時最佳化或常駐快取的網站,建議改用 VPS。Next.js 15 需要 Node.js 18.18 以上、Next.js 16 需要 20.9 以上,主機的 Node.js 22 與 24 都符合。

立即訂購或免費諮詢

不確定哪個方案最適合?讓我們的專業顧問免費評估!

免費諮詢 → 付款方式

主機不穩、頻寬被鎖、想換家又怕出包?

告訴我們現在的方案與大概流量,我們直接試算搬到瑪尼的年費,並排出不斷線的搬家順序——不必先簽約。中華電信光纖機房、不鎖頻寬、SSL 終生免費。

免費試算與搬家評估 →自己先算:主機代管費用試算

免費諮詢專線 0800-670000|技術支援 0921-070-027

延伸閱讀GUIDE

查看全部 98 篇文章 →

📞 技術支援(24小時):0921-070-027  |  📞 免費諮詢:0800-670000 📍 411 台中市太平區育賢路366號4樓之2  |  ✉ cody@mani.tw