必须安装homebrew并用brew install dunglas/tap/frankenphp安装v1.3 cli,因其不提供pkg或app store分发;需通过otool验证libssl/libcurl/libz存在,缺失则brew install openssl curl zlib并force link;扩展须在build阶段声明,不支持运行时动态加载。

在macOS上安装FrankenPHP v1.3前,必须确保系统具备能支撑其静态二进制构建与运行的基础组件,否则frankenphp build会失败或生成的二进制无法启动。
确认已安装Homebrew包管理器
FrankenPHP官方推荐使用Homebrew安装CLI工具,这是最稳定、版本可控的方式。若未安装,先执行:/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"。
这一步不可跳过——【frankenphp CLI不提供macOS原生pkg安装包,也未上架Mac App Store】,Homebrew是唯一被官方文档明确支持的分发渠道。
安装FrankenPHP CLI工具
运行命令:brew install dunglas/tap/frankenphp。
该命令会自动拉取v1.3对应版本的预编译二进制(含Go运行时、Caddy嵌入模块及PHP 8.3嵌入式SAPI),并完成PATH注册。安装完成后执行frankenphp --version应输出frankenphp version 1.3.x。
注意:不要用curl | sh方式手动下载二进制再chmod,v1.3起校验机制升级,非Homebrew安装的二进制可能因签名缺失被macOS Gatekeeper拦截。
验证系统级动态库兼容性
FrankenPHP v1.3 macOS版仍为动态链接构建(非musl静态),依赖系统级libssl、libcurl和zlib。需确认它们存在且版本达标:
① 运行otool -L $(which frankenphp) | grep -E "(libssl|libcurl|libz)",检查输出中是否含有效路径(如/usr/lib/libssl.dylib);
② 若报image not found,说明系统缺失对应dylib——macOS Ventura及以上版本已移除系统自带libssl,必须通过Homebrew安装:brew install openssl curl zlib;
③ 执行brew link --force openssl curl zlib确保符号链接就位,否则frankenphp build阶段可能静默降级为HTTP/1.1模式。
准备PHP扩展支持环境(按需)
方法一:使用内置扩展(推荐)
v1.3默认启用opcache、mbstring、json、curl、openssl、pdo_sqlite,无需额外操作。
方法二:手动启用pdo_mysql等扩展
需先安装MySQL客户端头文件:brew install mysql-client,再运行frankenphp build时加--php-ini参数指向自定义php.ini(其中含extension=pdo_mysql),否则扩展不会被静态编入二进制。
【注意:v1.3不再支持运行时动态加载.so扩展,所有扩展必须在build阶段声明并编译进二进制】
php免费学习视频:立即使用
踏上前端学习之旅,开启通往精通之路!从前端基础到项目实战,循序渐进,一步一个脚印,迈向巅峰!











