Yii2.0.55正常运行必须完成五项关键动作:框架下载、项目初始化、Web服务器根目录精准指向web/子目录、PHP环境校验及runtime/assets权限设置,缺一将导致白屏、500错误或静态资源加载失败。

要在本地或服务器上让 Yii2.0.55 正常运行,必须完成框架下载、项目初始化、Web 服务器根目录精准指向 web/ 子目录、PHP 环境校验及 runtime/assets 权限设置五项关键动作,漏掉任意一环都会导致白屏、500 错误或静态资源加载失败。
用 Composer 安装 Yii2.0.55
打开终端,确保已安装 Composer 并更新至最新版:运行 composer self-update。
执行以下命令创建基础版应用(自动拉取 2.0.55 正式版):
复制 AI 写代码composer create-project --prefer-dist yiisoft/yii2-app-basic myproject
若需高级版(含 frontend/backend 分离结构),改用:composer create-project --prefer-dist yiisoft/yii2-app-advanced myapp
【注意】不要手动修改 composer.json 中的 yii2 版本号来“升级”旧项目——这极易引发依赖冲突。全新安装才应使用上述命令直接获取 2.0.55。
初始化项目并生成配置
进入项目根目录:cd myproject
运行初始化脚本:php init
按提示选择 Development 或 Production 环境,确认生成 config/*.local.php 文件。
这一步会把 config/web.php 中空的 'cookieValidationKey' => '' 自动补全为高强度随机密钥,跳过会导致登录态失效、CSRF 验证失败。
配置 Web 服务器根目录
这是 90% 新手报错的根源。必须将站点根目录精确设为 web/ 子目录,绝不可设在项目根。
方法一(宝塔面板):
添加站点时,“根目录”栏填写完整路径,例如:/www/wwwroot/myproject/web
切勿填成 /www/wwwroot/myproject。
方法二(Nginx 手动配置):
在 server 块中设置:root /var/www/myproject/web;
并确保 index index.php; 和 location ~ \.php$ 块内 fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; 中的 $document_root 指向该 web 路径。
验证是否成功:访问 http://your-domain/index.php 应显示 Yii 欢迎页;若返回 403/404 或报 Failed opening required '../vendor/autoload.php',说明根目录设高了一级。
检查 PHP 环境与扩展
Yii2.0.55 官方支持 PHP 7.4 及以上版本,但【PHP 8.6 已纳入测试范围,不代表生产环境强制要求】。
必须启用的 PHP 扩展包括:
mbstring、intl、openssl、PDO、gd(验证码等组件依赖)。
在终端运行:php -m | grep -E "mbstring|intl|openssl|pdo|gd"
缺哪个就用对应包管理器安装,例如 Ubuntu 下:sudo apt install php-mbstring php-intl php-openssl php-pdo php-gd
修复 runtime 和 assets 目录权限
第一步:确保 runtime/ 和 assets/ 目录存在且可写:mkdir -p runtime assets
第二步:赋予当前 Web 服务用户写权限(以宝塔默认 www 用户为例):chown -R www:www runtime assets
第三步:设置目录权限为 755,文件为 644:find runtime assets -type d -exec chmod 755 {} \;find runtime assets -type f -exec chmod 644 {} \;
宝塔重启 PHP 或点击“一键部署”后常自动重置权限,每次操作后都需重新执行 chown 命令。


















