必须用 composer create-project 安装 Yii2,因 require yiisoft/yii2 仅得核心类库,缺失 web/index.php、config 目录、yii 命令等关键结构,项目无法运行;标准命令为 composer create-project --prefer-dist --stability=stable --no-scripts yiisoft/yii2-app-basic basic 2.0.48,装完须执行 php init 并配置数据库及扩展。

安装 Yii2 必须用 composer create-project,不能用 composer require yiisoft/yii2 —— 后者只装核心类库,没有入口文件、配置结构和命令行工具,项目根本跑不起来。
基础命令格式与必填参数
标准写法是:
composer create-project vendor/name project-dir version --options
-
vendor/name:必须写全,如
yiisoft/yii2-app-basic或yiisoft/yii2-app-advanced;漏掉yiisoft/或错写成yii2-basic都会报Could not find package -
project-dir:目标文件夹名,比如
basic或myapp;目录不能已存在,否则命令直接失败 -
version:Yii2 2.0 最后稳定版是
2.0.48,建议显式指定,避免因元数据过期找不到可用版本;不写可能默认跳过 stable 标签而失败
关键选项说明(国内环境必看)
这些参数不是可有可无,而是解决卡顿、报错、初始化失败的实操重点:
-
--prefer-dist:强制下载压缩包(zip),比克隆 Git 源码快且稳定,国内网络下强烈推荐 -
--no-scripts:跳过自动执行的初始化脚本(如生成 cookie key、软链配置),适合国内因 GitHub API 超时导致安装中断的情况;装完再手动运行php init -
--stability=stable:确保只选带stable标签的版本,防止误装dev-master或废弃快照版 -
--no-dev:不装测试/开发依赖(如 phpunit),节省空间,适合生产部署初期
常见组合命令示例
按实际场景直接复制使用:
- 基础版(学习/轻量项目):
composer create-project --prefer-dist --stability=stable --no-scripts yiisoft/yii2-app-basic basic 2.0.48 - 高级版(前后端分离):
composer create-project --prefer-dist --stability=stable --no-scripts yiisoft/yii2-app-advanced advanced 2.0.48 - 装完立刻初始化(进目录后执行):
cd basic && php init(选 Development 模式)
装完必须做的三件事
create-project 只是起点,不执行后续操作,访问就会 404 或 Class 'Yii' not found:
- 删掉
web/assets/目录(PHP 8.1+ 下权限敏感,首次访问易报写入失败) - 确认
environments/存在且含index.php,再运行php init;否则脚本找不到环境定义 - 编辑
config/db.php填数据库信息,并确保pdo_mysql、mbstring、openssl已启用

















