官方唯一推荐方式是用 composer create-project 安装 Yii2,因归档包无依赖解析、不校验扩展兼容性、缺少 vendor 目录,易致“Class not found”等运行失败;git clone 会破坏项目结构和命令行工具。

不推荐手动解压归档文件安装 Yii2 基础版——它看似简单,实则容易出错、后续难维护。官方和社区一致推荐用 Composer 安装,因为 Yii2 依赖大量外部包(如 psr/log、swiftmailer、faker 等),归档包不含 vendor 目录,也未锁定依赖版本,直接解压后运行会报“Class not found”或“require failed”。
为什么归档安装常失败?
基础版归档包(如 yii2-app-basic-2.0.x.tgz)是 Composer 构建后的产物,但不包含 vendor 目录,也不含自动加载配置。你解压后看到的 composer.json 仍是原始文件,必须执行 composer install 才能生成可运行环境。跳过这步,连 index.php 都无法加载框架核心类。
- 访问
web/index.php报错 “Class 'Yii' not found”:vendor 为空或未加载 autoloader - 执行
php yii serve失败:命令行找不到yii入口脚本依赖的类库 - 即使勉强跑起来,升级、添加扩展、调试都会卡在依赖缺失上
如果非要用归档文件,必须补全这三步
仅适用于离线环境或强管控服务器(无 Composer 权限),但操作成本远高于直接装 Composer:
- 下载完整归档包(含 vendor):去 GitHub Release 页面 找带 “with dependencies” 或 “full” 字样的压缩包(如
yii2-app-basic-2.0.48-with-deps.zip) - 解压后检查
vendor/是否存在且非空;运行php -f vendor/autoload.php不报错才算基础可用 - 确保
web/index.php中的require __DIR__ . '/../vendor/autoload.php';路径正确,且 web 目录为 Web 服务器根目录(不能直接双击打开 HTML)
更省事的“类归档”替代方案
想跳过 Composer 命令但又不想碰归档?用 create-project --prefer-dist 实际就是下载预构建的归档+自动解压+自动装依赖,效果等同于“带 vendor 的归档”,还省去手动校验步骤:
- 执行:
composer create-project --prefer-dist yiisoft/yii2-app-basic myapp - Composer 会自动从镜像拉取已打包好的完整项目(含 vendor),比手动下载+解压+装依赖更快更稳
- 国内用户加镜像提速:
composer config -g repo.packagist composer https://packagist.phpcomposer.com
验证是否真跑起来了
无论哪种方式,最终确认成功的唯一标准是:
- 进入项目根目录,执行
php yii serve(PHP ≥ 7.4) - 浏览器打开 https://www.php.cn/link/cbb686245ece57c9827c4bc0d0654a8e,看到黄色背景的 “Congratulations!” 页面
- 页面左下角显示 Yii 版本号(如 2.0.48)且无 PHP Warning 或 Fatal Error


















