可以,Windows 原生 CMD 能安装 FrankenPHP,需手动下载 Windows 二进制(如 frankenphp-windows-amd64.exe)、重命名并配置环境,或改用 PowerShell 执行下载与服务注册,支持完整 CLI 功能及 Windows 服务开机自启。

可以,Windows 原生 CMD 能安装 FrankenPHP,但不能直接用官方一键脚本(如 curl https://frankenphp.dev/install.sh | sh),因为该脚本是为 Linux/macOS/WSL 设计的 shell 脚本,CMD 不支持 | sh 管道执行,且缺少 sh 解释器。
真正可行的方式是:
- ✅ 手动下载 Windows 二进制并配置环境
- ✅ 用 PowerShell 替代 CMD 执行下载与安装(推荐)
- ✅ 通过 Windows 服务注册实现开机自启
下载 Windows 二进制(CMD 或 PowerShell 均可)
FrankenPHP 官方已提供 Windows 原生构建(.exe),无需 WSL 或 Docker:
- 访问 GitHub Releases
- 找到最新版,下载
frankenphp-windows-amd64.exe(或arm64,依 CPU 而定) - 重命名为
frankenphp.exe,放到你希望的目录,例如C:\frankenphp\
在 CMD 中执行(需先 cd 进入目录):
立即学习“PHP免费学习笔记(深入)”;
curl -L -o frankenphp.exe https://www.php.cn/link/cce7f49cc93c47d849de1e17ef184c1b/download/v1.2.0/frankenphp-windows-amd64.exe
⚠️ 注意:
curl在 Windows 10/11 自带,但若提示“不是内部命令”,请改用 PowerShell,或启用 Windows 功能「OpenSSH 客户端」,或从官网下载独立curl.exe。
验证安装
CMD 中运行:
在 Windows 11 上"直接发声"的 TTS(从 WSL2/TUI 调用 powershell.exe + System.Speech)。适用于用户说"说出来/读出来/语音播报/用TTS",或反馈"没声音/tts 生成的 mp3 是空的/播不出来",以及需要中文语音但 OpenClaw 内置 tts 不可用时。
frankenphp.exe --version
若输出类似 frankenphp version v1.2.0,说明已就绪。
启动服务(CMD 可直接运行)
例如监听 :8000:
frankenphp.exe serve --addr :8000 --document-root public
或搭配 Caddyfile:
frankenphp.exe run --config Caddyfile
✅ 所有 CLI 参数、
frankenphp.toml配置、Worker 模式、Hot Reloading 均在 Windows 原生下完整支持。
注册为 Windows 服务(开机自启)
CMD(需管理员权限):
sc create FrankenPHP binPath="C:\frankenphp\frankenphp.exe run --config C:\frankenphp\Caddyfile" start= auto
-
binPath=后必须有空格 - 路径含空格或中文?用英文双引号包裹整个路径值
- 注册后运行
sc start FrankenPHP即可启动
补充提醒
- ❌ 不要用
install.sh或| sh方式——CMD 没有sh,也不识别 bash 语法 - ❌ 不要依赖
apt/brew/pacman——这些在原生 Windows CMD 中不存在 - ✅ 推荐用 PowerShell 执行下载(更稳定):
Invoke-WebRequest -Uri "https://www.php.cn/link/cce7f49cc93c47d849de1e17ef184c1b/download/v1.2.0/frankenphp-windows-amd64.exe" -OutFile "frankenphp.exe"
- ✅ 安装后建议把
frankenphp.exe所在目录加入系统PATH,方便全局调用
不复杂但容易忽略。


















