HOSTINGCOMPARE21 SOURCES

主機作業系統怎麼選:Linux 與 Windows 的網站程式、資料庫與授權成本

主機選 Linux 還是 Windows,先看網站程式。說明 .NET 跨平台現況、MySQL 與 SQL Server 差異、Windows Server 授權方式與換平台步驟。

凱斯騰編輯部 EDITORIAL主機 · UPDATED 2026-10-24LINE 諮詢
木桌上的白色鍵盤
示意照片
CONTENTS · 10 段
  1. 常見情境:貿易公司舊系統、診所預約、WordPress 官網怎麼選平台
  2. 先看網站用什麼程式寫:PHP、ASP.NET 與 Access 決定平台
  3. .NET 跨平台的現況:哪些 ASP.NET 網站能放 Linux
  4. 資料庫怎麼比:MySQL/MariaDB 與 SQL Server 的版本限制
  5. 授權成本的結構:Windows Server 與 SQL Server 怎麼計算
  6. 管理介面與日常維運:SSH、遠端桌面與兩平台比較表
  7. 轉換平台的難度與步驟:從大小寫到網址改寫規則
  8. 找凱斯騰協助前,先準備這些:選擇主機作業系統的評估資料
  9. 常見問題
  10. 參考資料

主機要選 Linux 還是 Windows,答案幾乎由網站的程式決定。用 PHP 寫成的網站,包括 WordPress、OpenCart 這類開源系統,放 Linux 最順手;用 ASP.NET Web Forms 或舊版 .NET Framework 開發、資料存在 Access 檔案裡的系統,只能留在 Windows。真正有得選的是用新版 .NET 開發的網站,這時才需要把資料庫、授權費用的計算方式與維運人力放在一起比較。

01常見情境:貿易公司舊系統、診所預約、WordPress 官網怎麼選平台

以下是幾種常見情況的示意,不是真實客戶案例。先找最接近你的一種,再從建議的段落讀起。

02先看網站用什麼程式寫:PHP、ASP.NET 與 Access 決定平台

作業系統是網站程式的地基,先確認程式,再談方案與價格。不懂程式也能判斷,照下面三個方向找線索:

網站程式適合的平台判斷重點
PHP(WordPress、OpenCart、Joomla 等)LinuxPHP 官方雖有 Windows 版本,但 WordPress 官方建議以 Apache 或 Nginx 執行,外掛與教學也多以 Linux 環境為準
ASP.NET Web Forms、.NET Framework 程式Windows只能在 .NET Framework 上執行,換到 Linux 等於改寫
ASP.NET Core(.NET 5 以後的版本)Linux 或 Windows程式本身跨平台,改看資料庫、授權與團隊熟悉哪一邊
傳統 ASP、Access 資料庫Windows依賴 Windows 元件,換主機時適合一併規劃改用 SQL Server

同一家公司也可能兩種都有:對外官網是 WordPress,內部的報價或訂單系統是 ASP.NET。這時不必硬湊在同一台主機,官網放 Linux、內部系統放 Windows,分開管理反而清楚。真的找不到原始碼與開發商時,至少先把整個網站目錄與資料庫完整備份下來,再請人判斷。

03.NET 跨平台的現況:哪些 ASP.NET 網站能放 Linux

微軟目前有兩條 .NET 產品線。.NET Framework 是原始版本,只能在 Windows 上執行,Microsoft Learn 將它描述為仍受支援、但處於維護狀態;.NET(早期稱為 .NET Core,.NET 5 以後去掉 Core)是開源、跨平台的版本,可以在 Windows、Linux 與 macOS 上執行。微軟的選擇指引寫得很直接:新的伺服器程式以最新版 .NET 為優先,目前是 .NET 10;繼續使用 .NET Framework 的理由有限,主要是既有程式已經用它寫成,或用到新版沒有的技術。

最常見的「新版沒有」就是 ASP.NET Web Forms:它只存在於 .NET Framework,ASP.NET Core 無法執行 Web Forms 頁面;ASP.NET Web Pages、Windows Workflow Foundation 也一樣。所以網址滿是 .aspx 的舊系統,想放 Linux 就不是搬家,而是重寫。

版本支援期也要一起看。依微軟公布的時程,.NET 10 是長期支援版,支援到 2028 年 11 月;.NET 8 與 .NET 9 都在 2026 年 11 月結束支援。網站還在 .NET 8 或 9 的,與其現在換平台,不如先排定升級到 .NET 10,升級完成再決定放哪裡。.NET Framework 4.8 與 4.8.1 則跟著 Windows 作業系統的支援期走;4.6.2 與 Windows Server 2016 都在 2027 年 1 月結束延伸支援,主機若還是這個版本,汰換時程已經很緊。

ASP.NET Core 放上 Linux 的標準做法,依微軟的部署文件,是讓程式在內建的 Kestrel 伺服器上執行,前面再架 Nginx 這類反向代理,處理 HTTPS、靜態檔案與快取,並把程式設定成開機自動啟動的系統服務。這些設定需要完整的系統權限,一般共用主機做不到,通常要用 VPS 雲端主機這類可以自行安裝軟體的環境。

04資料庫怎麼比:MySQL/MariaDB 與 SQL Server 的版本限制

PHP 網站的標準搭配是 MySQL 或 MariaDB。MariaDB 由 MySQL 的原始開發者打造,一開始就以 MySQL 的直接替代品為設計目標,並以 GPLv2 開源授權釋出;WordPress 官方建議的資料庫是 MySQL 8.0 以上或 MariaDB 10.11 以上,兩者在多數網站上可以互換。

SQL Server 是微軟的資料庫。很多人以為它只能裝在 Windows,其實 SQL Server 2017 起就有 Linux 版,使用和 Windows 版相同的資料庫引擎,官方支援 Red Hat Enterprise Linux 與 Ubuntu。也就是說,真正把網站綁在 Windows 上的通常是程式,而不是資料庫;用 ASP.NET Core 寫成、搭配 SQL Server 的系統,資料庫放在哪一個平台可以獨立評估。

選 SQL Server 時,版本比平台更影響預算:

還在用 Access 檔案當網站資料庫的,要特別留意:微軟在 Access 資料庫引擎可轉散發套件的說明中,明確表示不建議用在 ASP.NET 等伺服器端程式,該版本也已在 2025 年 10 月結束支援。換主機正好是把資料轉進 SQL Server 的時機。

05授權成本的結構:Windows Server 與 SQL Server 怎麼計算

Linux 這一邊的結構比較單純:常見的 Linux 發行版、PHP、MySQL 與 MariaDB 都是開源軟體,主機費主要反映硬體、頻寬與維運;部分企業級發行版另有付費的訂閱支援。Windows 這一邊則多了兩層授權:作業系統與資料庫。以下只說明計算方式,金額會隨版本與通路變動,請以報價為準。

租用主機時,這些授權通常由主機商處理。微軟的服務供應商授權協議(SPLA)讓服務商按月為客戶取得授權,費用多半已包在租金裡。所以拿到 Windows 方案報價時,要請對方寫清楚:作業系統與 SQL Server 授權是否內含、是哪一個版本、依幾個核心計算。VPS 或專屬主機加大處理器核心數時,授權費可能跟著增加,升級前也要先問。

06管理介面與日常維運:SSH、遠端桌面與兩平台比較表

兩個平台的日常操作方式差很多。Linux 主機主要透過 SSH 以指令操作,安裝套件、套用更新、查看記錄檔都是打指令完成;團隊用 Git 管理程式碼、想用推送方式部署與保留開發測試環境的,可以直接選 開發者主機。Windows 主機則以遠端桌面連進圖形介面,用 IIS 管理員設定網站,習慣 Windows 的人上手快。Windows Server 2019 與 2022 可透過選用功能安裝 OpenSSH,2025 版已預先安裝但預設未啟用,兩邊的界線正在變淡。

如果用的是共用的虛擬主機,兩種平台都透過網頁控制台管理,通常碰不到 SSH 或遠端桌面。真正要面對這些差異的,是自己管理整台主機的人。不論哪一邊,遠端管理的連接埠都不要對全世界開放:限定來源 IP、改用金鑰登入,並為更新排定維護時段,部分 Windows 更新需要重新開機。

項目Linux 主機Windows 主機
適合的程式PHP、WordPress 等開源系統,ASP.NET CoreASP.NET Web Forms、.NET Framework、傳統 ASP,ASP.NET Core
常見資料庫MySQL、MariaDB;SQL Server 也可安裝SQL Server;也可安裝 MySQL
授權結構作業系統與常見軟體多為開源作業系統與資料庫依核心或使用者計算授權
遠端管理SSH 指令操作遠端桌面圖形介面,新版可啟用 OpenSSH
檔名與資料表名稱區分大小寫不區分大小寫
網址改寫設定Apache 的 .htaccess 或 Nginx 設定檔IIS 的 web.config

07轉換平台的難度與步驟:從大小寫到網址改寫規則

轉換平台的難度,取決於程式要不要改。PHP 網站從 Windows 搬到 Linux,多半只要搬檔案與資料庫,再修正少數設定;.NET Framework 網站要搬到 Linux,則必須先移植到新版 .NET。微軟的升級指南說明,這種移植會改變應用程式模型、專案格式與部分 API,新版沒有的技術還要找替代方案,工作量要請開發商評估,不是主機商能代勞的事。

最常被忽略的是大小寫。MySQL 官方文件說明,資料庫與資料表名稱是否區分大小寫取決於作業系統:Windows 不區分,多數 Unix 系統會區分,相關參數 lower_case_table_names 在 Unix 預設為 0、在 Windows 預設為 1。在 Windows 上寫成 Orders、查詢時寫 orders 一直相安無事的網站,搬到 Linux 後就可能出現「找不到資料表」;圖片檔名大小寫不一致,也會變成破圖。

建議照這個順序進行:

  1. 盤點:列出網站程式與版本、資料庫種類與大小、排程工作、寄信方式,以及所有寫死在程式裡的路徑。
  2. 建立測試環境:在新主機用測試網址架一份,先不動正式網站與 DNS。
  3. 轉換資料庫:匯出匯入後,比對資料筆數,並統一資料表名稱的大小寫。
  4. 改寫設定:把 web.config 的網址改寫規則換成 .htaccess 或 Nginx 設定,反向亦同;檢查檔案寫入權限。
  5. 逐頁測試:表單送出、會員登入、後台上傳、通知信與排程工作都要實際跑一次。
  6. 切換與觀察:選在流量低的時段修改 DNS,舊主機保留到確認無誤後再停用。

網站和信箱放在同一台主機的,搬移順序與 DNS 切換要一起規劃,可參考網站與郵件移轉的流程,避免切換期間漏信。

08找凱斯騰協助前,先準備這些:選擇主機作業系統的評估資料

想請我們一起判斷該選 Linux 還是 Windows,先把下面的資料整理好,評估時就不必從頭猜測網站的組成:

凱斯騰的虛擬主機以 Linux 為主,另有 Windows 與 MSSQL 主機方案;需要整台主機的 ASP.NET 或 MSSQL 系統,可評估專屬伺服器的 Windows 類型,沒有系統管理人力的,可選全代管。VPS 的作業系統選項請洽詢。資料備齊後,請透過聯絡表單洽詢,或來信 [email protected],並註明網站程式與目前主機的到期日。程式是否需要移植到新版 .NET,屬於開發商的工作範圍,我們會在評估時把主機與程式兩邊的分工說清楚。

FAQ常見問題

Q.01WordPress 可以放在 Windows 主機上嗎?

可以執行,PHP 官方也提供 Windows 版本。不過 WordPress 官方建議的網頁伺服器是 Apache 或 Nginx,主題、外掛的安裝說明也大多以 Linux 主機為例。新架設的 WordPress 網站,選 Linux 會少很多設定上的麻煩。

Q.02Windows 主機一定比 Linux 主機貴嗎?

多數情況下會多出作業系統與資料庫的授權成本,但實際差距要看授權是否已含在租金、SQL Server 用哪個版本、主機有幾個核心。比較時請把授權項目和主機本身分開列出,才看得出差在哪裡。

Q.03網站用 SQL Server,就一定要選 Windows 主機嗎?

不一定。SQL Server 2017 之後的版本可以安裝在 Linux 上。決定平台的通常是網站程式:若是 .NET Framework 或 Web Forms,程式本身就得留在 Windows;若是 ASP.NET Core,網站與資料庫可以各自選擇最合適的環境。

Q.04開發商說網站是 .NET 8,需要馬上處理嗎?

要開始安排。.NET 8 的官方支援在 2026 年 11 月結束,之後不再有安全修補。請開發商評估升級到長期支援版 .NET 10 的工作量與時程;升級完成後,網站可以放 Linux 也可以放 Windows,再一併決定主機方案。

參考資料

  1. Introduction to .NET|Microsoft Learn(查閱日期:2026-10-24)
  2. Choose between .NET and .NET Framework for server apps|Microsoft Learn(查閱日期:2026-10-24)
  3. .NET releases, patches, and support|Microsoft Learn(查閱日期:2026-10-24)
  4. Upgrade .NET apps overview|Microsoft Learn(查閱日期:2026-10-24)
  5. Host ASP.NET Core on Linux with Nginx|Microsoft Learn(查閱日期:2026-10-24)
  6. Microsoft .NET Framework - Microsoft Lifecycle|Microsoft Learn(查閱日期:2026-10-24)
  7. Windows Server 2016 - Microsoft Lifecycle|Microsoft Learn(查閱日期:2026-10-24)
  8. What is SQL Server on Linux?|Microsoft Learn(查閱日期:2026-10-24)
  9. Editions and Supported Features of SQL Server 2022|Microsoft Learn(查閱日期:2026-10-24)
  10. Editions and Supported Features of SQL Server 2025|Microsoft Learn(查閱日期:2026-10-24)
  11. Core based licensing models|Microsoft Licensing(查閱日期:2026-10-24)
  12. Windows Server 2025 licensing(授權模式與虛擬化權利)|Microsoft(查閱日期:2026-10-24)
  13. SQL Server 2022 licensing models and editions|Microsoft(查閱日期:2026-10-24)
  14. Services Provider License Agreement (SPLA)|Microsoft Licensing(查閱日期:2026-10-24)
  15. License Remote Desktop Services with Client Access Licenses (CALs)|Microsoft Learn(查閱日期:2026-10-24)
  16. OpenSSH for Windows overview|Microsoft Learn(查閱日期:2026-10-24)
  17. Microsoft Access Database Engine 2016 Redistributable|Microsoft Download Center(查閱日期:2026-10-24)
  18. Identifier Case Sensitivity|MySQL 8.4 Reference Manual(查閱日期:2026-10-24)
  19. About MariaDB Server|MariaDB Foundation(查閱日期:2026-10-24)
  20. Requirements|WordPress.org(查閱日期:2026-10-24)
  21. Installation on Windows systems|PHP Manual(查閱日期:2026-10-24)
需要協助評估?把網域、主機與網站狀況告訴我們,真人協助判斷下一步。