部署Yii框架需先确认PHP版本≥7.4并安装Composer,上传项目后配置Nginx实现URL重写,确保runtime和assets目录可写,关闭调试模式并设置cookieValidationKey,最后通过web/index.php访问应用。

将PHP程序部署到Yii框架,核心在于正确配置运行环境、合理组织项目结构,并确保Web服务器能正确解析入口文件。Yii是一个高效、安全的PHP框架,支持快速开发,但部署时需注意其对目录权限、URL重写和环境依赖的要求。
1. 确认服务器环境要求
Yii框架对PHP版本有一定要求,通常需要:
- PHP 7.4 或更高版本(推荐PHP 8.0+)
- 启用常见扩展:PDO、MBString、OpenSSL、JSON、GD或Imagick(如需图像处理)
- Composer 工具用于依赖管理
可通过命令行检查PHP版本:
php -v
若未安装Composer,从官网下载并全局安装:
curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/local/bin --filename=composer
2. 部署Yii项目文件
将开发完成的Yii项目上传至服务器指定目录(如/var/www/html/yii-project)。关键目录结构如下:
- index.php:位于web/目录下,是应用的入口文件
- config/:存放数据库、环境等配置文件
- runtime/:日志和缓存目录,需赋予写权限
- vendor/:依赖库,由Composer生成
若使用Git部署或手动上传,建议先在本地运行:
composer install --optimize-autoloader --no-dev
以确保生产环境只包含必要依赖。
3. 配置Web服务器(以Nginx为例)
为保证URL美化(如去除index.php),需配置Nginx规则。示例配置:
立即学习“PHP免费学习笔记(深入)”;
server {
listen 80;
server_name yourdomain.com;
root /var/www/html/yii-project/web;
index index.php;
location / {
try_files $uri $uri/ /index.php?$args;
}
location ~ \.php$ {
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}}
Apache用户可直接使用Yii自带的 .htaccess 文件,确保开启了mod_rewrite模块。
4. 设置目录权限与环境模式
Yii在运行时需写入runtime和assets目录:
- 设置可写权限:
chmod -R 775 runtime/ assets/ - 修改
config/web.php中的'cookieValidationKey'为唯一密钥 - 生产环境中关闭调试模式:
'components' => [...], 'params' => [...], 'on beforeRequest' => function() { Yii::$app->errorHandler->errorAction = 'site/error'; } ]
基本上就这些。只要环境满足、路径正确、权限到位,Yii项目就能顺利运行。部署后访问域名即可看到首页,如有错误查看runtime/log/app.log定位问题。不复杂但容易忽略细节。











