# Windows 运行时 EOL：PHP、Java、Node、Python 升级规划

> 盘点每个运行时版本，用 eol.wiki 与官方支持矩阵核对 EOL，再按可回滚路径升级。

**测试环境**

- 版本号: 26100.33650
- 版本: Standard / Datacenter
- 架构: x64
- 证据: E1
- 核验日期: 2026-10-29

## 一句话结论

EOL 意味着**不再有安全修复**。EOL 运行时上的站点不是“稳定”，是永久未打补丁。

用 [eol.wiki](https://eol.wiki) 做盘点/发现入口，再用官方矩阵确认具体分支和日期。不要只凭第三方日期升级。

## 先盘点

收集每个应用**实际使用**的版本，不是机器上装了什么：

```powershell
# PHP
C:\PHP\8.4\php.exe -v
# Java
& C:\Java\jdk-17\bin\java.exe -version
# Node
& C:\node\20\node.exe --version
# Python
C:\apps\api\.venv\Scripts\python.exe --version
```

还要记录：

- 应用名、主机名、负责人；
- 运行时路径和版本；
- 依赖（`composer.lock`、`package-lock.json`、`requirements.txt`、`pom.xml`）；
- TLS/库依赖；
- 升级阻碍（框架、扩展、原生模块）。

## 查 EOL

1. 打开 [eol.wiki](https://eol.wiki)，搜产品。
2. 看 active support / security-only / EOL。
3. 用官方矩阵确认：
   - PHP：supported versions；
   - Node.js：release schedule；
   - Python：devguide versions；
   - Java：厂商（Temurin/Microsoft/Oracle）支持策略。
4. 把日期和来源写进应用 runbook。

厂商说“支持”，不代表你跑的具体发行版支持。核对实际发行版。

## 风险分层

| 状态 | 动作 |
|---|---|
| Active support | 正常打补丁；规划下一个 LTS |
| Security-only | 尽快升级；无新功能 |
| EOL | 视为事故风险；隔离/缓解；升级 |
| Unknown | 先当 EOL，直到证明不是 |

EOL 不只是运行时：框架、扩展、原生模块也可能 EOL，即使运行时还支持。

## 不做大爆炸升级

1. 新运行时装在旧版旁边（见多版本页）。
2. 用新运行时构建 staging 副本。
3. 跑应用测试 + 冒烟（登录、上传、支付、TLS）。
4. 比对扩展/模块和配置。
5. 一次迁一个站点/服务。
6. 保留旧运行时回滚；约定窗口后再删。

PHP 测扩展和 `php.ini`；Java 测 class 版本/TLS/GC；Node 测原生模块和 lockfile；Python 测 wheel 和 venv。

## 补丁节奏

- 订阅厂商安全公告。
- 打运行时补丁，不只打应用。
- 容器/镜像从已打补丁的基础镜像重建。
- 每应用保留 SBOM 或至少 lockfile。
- staging 验证；不要盲目自动打生产。

> **警告: EOL 不是跳过测试的许可证**
>
> 大版本升级可能破坏扩展、TLS cipher、原生模块和行为。安全路径是并存、staging、逐应用迁移。

## Runbook 字段

```text
App:            api-a
Runtime:        Node 20.x (path C:\node\20)
Support state:  security-only / EOL date
Owner:          team
Dependencies:   package-lock.json
Upgrade target: Node 22.x
Test plan:      smoke + integration
Rollback:       old service definition + old node dir
```

## 实验室边界

E1。本页是规划方法，不声称某个运行时在某天 EOL。行动前用 [eol.wiki](https://eol.wiki) 和官方矩阵核对每个版本。

## 来源

- [eol.wiki — 生命周期终止追踪](https://eol.wiki)
- [PHP — 支持版本](https://www.php.net/supported-versions.php)
- [Node.js — 历史版本](https://nodejs.org/en/about/previous-releases)
- [Python — 版本](https://devguide.python.org/versions/)

---

来源页面: https://winbook.fyi/zh/server/runtimes/eol/
