觀點 · 資訊分享
Azure 宣布 2027/3/31 起,Windows 版 App Service 與 Functions 不再執行 Python:要搬去 Linux
Microsoft 4/2 公告,2027 年 3 月 31 日起,跑在 Windows 版 Azure App Service 與 Azure Functions 上的 Python 應用程式將停止執行,需在期限前搬到 Linux。
- 發布
- 2026-04-03
- 篇幅
- 約 4 分鐘 · 1,580 字
- 結構
- 7 節 + 3 題常見問題
- 標籤

一句話看懂:Azure 宣布 2027 年 3 月 31 日起,Windows 版的 App Service 與 Functions 不再執行 Python 應用程式,現在還有大約一年的時間搬去 Linux。

先用白話講:App Service 和 Functions 是什麼?
想像你把網站或程式「寄放」在雲端大樓,不需要自己買伺服器。Azure App Service 負責跑網站與 API,Azure Functions 負責跑一小段一小段的程式(例如有人上傳檔案就觸發一次)。這兩種服務都可以選「Windows 房間」或「Linux 房間」。
這次的公告是:Python 程式不能再住在 Windows 房間了,期限內要搬到 Linux 房間。
發生什麼事
Microsoft 在 4 月 2 日發布公告,重點如下:
- 停止日期:2027 年 3 月 31 日起,Windows 版 App Service 與 Windows 版 Azure Functions 上的 Python 應用程式將不再執行
- 到期後會怎樣:應用程式的設定與內容仍保留;但應用程式會停止執行,並且不再提供技術支援
- 背景:官方說 Windows 版 App Service 上的 Python 從 2021 年 12 月起就沒有再支援,這次只是正式把這個執行階段退場
- 該做什麼:必須在 2027 年 3 月 31 日前,把 Python 應用程式搬到 Linux
從公告日到期限大約是 12 個月(自行換算,四捨五入),時間看起來很夠,但服務越多越容易拖到最後。
現在 vs 期限之後
| 項目 | 現在 | 2027/3/31 之後 |
|---|---|---|
| 應用程式執行 | 官方 2021/12 起就不支援,但目前仍可能運作 | 停止執行 |
| 設定與內容 | 存在 | 保留 |
| 技術支援 | 沒有(已停止支援) | 不提供 |
「目前仍可能運作」是根據官方「到期後不再執行」的說法推論,公告沒有逐項描述目前的行為,請以你自己的環境為準。
給開發者的技術細節
官方建議的做法很單純:
- 建立一個 Linux 版 的 App Service 或 Functions 應用程式
- 把 Python 工作負載重新部署上去
- 驗證沒問題後,再切換流量、退掉 Windows 版
要留意的地方(以下是我的提醒,不是公告內容):
- 如果程式裡有寫死 Windows 路徑(例如
C:\home\site)或用了只在 Windows 上有的函式庫,搬過去要改 - 啟動指令、環境變數與檔案權限在 Linux 上的行為不同,建議先在測試環境跑過一遍
- 若有用自訂網域與憑證,切換時要重新綁定
我的看法
接案時常遇到客戶的舊系統,當年為了方便選了 Windows 主機,之後沒人再動過。這種「能跑就別碰」的專案,最容易在退場日當天出事。我會建議現在就列一份清單:哪些客戶的服務跑在 Windows 版 App Service,執行階段是不是 Python,把它放進今年的維護計畫,而不是等到 2027 年初才來救火。
好消息是官方明說設定與內容都保留,搬遷主要是重新部署,風險可控;壞消息是搬遷成本要有人買單,跟客戶講清楚越早越好。
名詞小辭典
- App Service:Azure 上用來託管網站與 API 的服務。
- Azure Functions:事件觸發才執行的小型程式服務,用多少算多少。
- 執行階段(Runtime):執行某種語言程式所需的環境,例如 Python 的直譯器與相關設定。
- 退場(Retirement):雲端服務宣布在某個日期後停止提供某項功能。