Webman项目必须用create-project,不能用require;因为require仅将代码放入vendor/,不生成start.php、app/、config/等骨架文件,导致Class 'Webman\App' not found错误,而create-project会完整拉取骨架、安装依赖并初始化。

webman项目必须用create-project,不能require
Webman 不是普通 Composer 包,它依赖完整骨架结构(start.php、app/、config/、runtime/等),而 composer require workerman/webman 只会把代码放进 vendor/,不生成这些文件,运行时直接报 Class 'Webman\App' not found。
正确做法只有这一种:
-
composer create-project workerman/webman myapp(myapp是你的项目目录名,别漏空格) - 网络慢或失败时,去 GitHub Releases 下载
webman-x.x.x.zip(不是 Source code),解压后进目录执行composer install - Windows 用户别双击
start.php,必须在 CMD 运行php start.php start才能看到真实错误
安装 admin 监控面板要匹配 Webman 版本
webman/admin 插件不是“装上就跑”,版本错配会导致路由注册失败、静态资源 404 或后台白屏。它和 Webman 主框架强绑定:
- Webman 1.x →
composer require -W webman/admin ~1.0 - Webman 2.x →
composer require -W webman/admin ~2.0 - 必须在项目根目录下执行,否则 Composer 找不到
composer.json和框架上下文 - 安装后需重启服务:
php start.php restart,否则中间件和路由不生效
微服务场景下依赖安装要关掉 dev-only 包
微服务部署通常走容器化或精简镜像,vendor/ 里混入 phpunit、symfony/var-dumper 等开发依赖,不仅增大体积,还可能触发安全扫描告警。
围绕关键发现、作用机制、临床相关性及研究局限性展开讨论。适用于撰写或优化任何生物医学论文的“讨论(Discussion)”部分——包括结果解读、与既往文献关联、阐释意外发现、界定研究局限性,以及撰写结论。当用户输入以下任一指令时也会自动触发该功能: - “write my discussion” - “help me discuss my findings” - “how do I compare to prior studies” - “write the limitations par
推荐命令:
-
composer install --optimize-autoloader --no-dev(生产环境标准操作) - 若已装过 dev 包,先删
vendor/再重装,避免残留 - 检查
composer.lock是否含require-dev字段,有则说明没生效
常见报错:proc_open 被禁用但提示不明确
启动时报 proc_open(): Disabled by configuration 或直接闪退,本质是 PHP 的 disable_functions 拦了 Webman 必须的底层函数——不只是 proc_open,还有 pcntl_fork、putenv、shell_exec。
排查步骤:
- 运行
php --ini查看加载的php.ini路径 - 打开该文件,找到
disable_functions =行,删掉其中的proc_open,pcntl_fork,pcntl_wait,putenv,shell_exec - 保存后,新开终端运行
php -i | grep disable_functions,确认输出为空或不含上述函数 - 别忘了重启 CLI 环境,否则修改不生效
这个环节最容易被跳过:改完 php.ini 却没重启终端,或者改错了 CLI 版本的配置文件(比如只改了 Apache 的 php.ini,但 Webman 是 CLI 启动的)。


















