hyperf 是运行在标准 linux 系统(如 ubuntu)上的 php 微服务协程框架,非操作系统或发行版;需手动安装 php 8.0+(启用 mbstring、pcntl、bcmath 等扩展)、swoole v5.0+(确认 coroutine=enabled)、composer 2.5+,并执行 composer require hyperf/http-server 启用 http 服务。

Hyperf 不是操作系统,也不是 Ubuntu 的某个定制版,它是一个运行在标准 Linux 系统(如 Ubuntu、CentOS)上的 PHP 微服务协程框架。物理服务器部署时,核心是准备好兼容的底层环境,而非安装“Hyperf 系统”。关键依赖必须手动安装并严格校验。
PHP 8.0+ 及必需扩展
Hyperf 要求 PHP 版本 ≥8.0,且必须启用以下扩展:
-
mbstring:用于多字节字符串处理,编译时加
--enable-mbstring -
pcntl:进程控制,协程调度与子进程管理依赖它,加
--enable-pcntl -
bcmath:高精度数学运算,加
--enable-bcmath - sockets 和 curl:网络通信基础支持
特别注意:opcache.enable_cli=0 必须在 php.ini 中显式关闭,否则 CLI 模式下协程会异常甚至静默失败。
Swoole 扩展(不可替代的核心)
Hyperf 依赖 Swoole 提供协程能力,不能用其他扩展替代:
- 推荐使用
pecl install swoole安装最新稳定版(v5.0+) - 安装后在
php.ini添加extension=swoole - 验证命令:
php --ri swoole,确认输出中包含coroutine => enabled - 若用源码编译 Swoole,需启用
--enable-coroutine-gcc或确保内核支持io_uring(Ubuntu 22.04+ 更稳妥)
Composer 与项目初始化
无需“Hyperf 发行版镜像”,直接在物理机上操作:
- 安装 Composer 2.5+:
curl -sS https://getcomposer.org/installer | php && sudo mv composer.phar /usr/local/bin/composer - 创建项目:
composer create-project hyperf/hyperf-skeleton myapp - 进入目录后,必须先执行:
composer require hyperf/http-server——骨架默认不带 HTTP 服务组件,漏装会导致启动无端口监听
系统级准备与常见避坑
物理服务器环境更需关注底层兼容性:
- 操作系统建议 Ubuntu 22.04 LTS(内核 ≥5.4),避免 CentOS 7 默认内核(3.10)导致 Swoole 协程调度不稳定
- 检查
/proc/sys/net/core/somaxconn,建议调至 ≥65535,提升并发连接承载力 - 禁用 SELinux(CentOS/RHEL)或 AppArmor(Ubuntu),防止扩展加载被策略拦截
- 启动前务必确认
config/autoload/server.php中servers数组包含type => Server::SERVER_HTTP,不是SERVER_BASE











