Yii学习总结之安装配置
安装要求
- PHP 5.4 或更高版本
- MySQL 5.1 或更高版本
下载Yii
从官网下载Yii,解压到web服务器目录下,例如:/var/www/yii
。
配置Web服务器
Apache
创建一个yii
虚拟主机:
- 打开 Apache 配置文件:
/etc/httpd/conf/httpd.conf
- 添加以下代码:
apache
<VirtualHost *:80>
ServerName yii.local
DocumentRoot /var/www/yii/basic/web
<Directory /var/www/yii/basic/web>
# 开启 URL 重写功能
RewriteEngine On
# 如果请求的是真实存在的文件或目录,直接访问
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
# 如果请求的不是真实文件或目录,分发请求至 index.php
RewriteRule . index.php
# 以下是允许默认访问的文件和目录
DirectoryIndex index.php
AllowOverride All
Order allow,deny
Allow from all
</Directory>
</VirtualHost>
- 修改
/etc/hosts
添加以下代码:
127.0.0.1 yii.local
- 重启 Apache:
sudo service httpd restart
Nginx
创建一个yii
虚拟主机:
- 打开 Nginx 配置文件:
/etc/nginx/conf.d/yii.conf
- 添加以下代码:
```nginx
server {
listen 80;
server_name yii.local;
root /var/www/yii/basic/web;
location / {
# 开启 URL 重写功能
if (!-e $request_filename) {
rewrite ^/(.*)$ /index.php last;
}
}
location ~ \.php$ {
# 允许 PHP 解析器解析 PHP 文件
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
}
```
- 修改
/etc/hosts
添加以下代码:
127.0.0.1 yii.local
- 重启 Nginx:
sudo service nginx restart
创建Yii应用
进入Yii目录,使用以下命令创建一个名为basic
的Yii应用:
./yii init --env=Production --overwrite=All basic
init
命令会在当前目录下创建一个名为basic
的目录,并在其中创建一个Yii应用的基础结构。
配置数据库
打开 basic/config/db.php
文件,修改以下代码:
return [
'class' => 'yii\db\Connection',
'dsn' => 'mysql:host=localhost;dbname=dbname',
'username' => 'dbuser',
'password' => 'dbpassword',
'charset' => 'utf8mb4',
];
创建数据表
使用以下命令生成数据表:
./yii migrate
migrate
命令会查找migrations
目录中的所有迁移文件,并依次执行其中的“up”方法。
示例1:创建一个Hello World控制器
创建HelloController
控制器,使用以下命令:
./yii gii/controller --controllerClass=HelloController --viewPath=@app/views/hello
gii/controller
命令会通过交互式界面创建一个新的控制器。
在HelloController
的actionIndex
方法中返回字符串Hello, world!
:
public function actionIndex()
{
return 'Hello, world!';
}
访问http://yii.local/index.php?r=hello
,看到输出Hello, world!
,说明控制器已经创建成功。
示例2:创建一个数据模型
创建一个名为Post
的模型,使用以下命令:
./yii gii/model --tableName=post --modelClass=Post
gii/model
命令会通过交互式界面创建一个新的模型,并自动生成相应的代码文件。
在Post
模型的rules
方法中定义模型属性校验规则:
public function rules()
{
return [
[['title', 'content'], 'required'],
[['status'], 'integer'],
[['created_at', 'updated_at'], 'safe'],
[['title'], 'string', 'max' => 255],
];
}
定义数据表中的字段到模型的属性映射关系:
public function attributeLabels()
{
return [
'id' => 'ID',
'title' => 'Title',
'content' => 'Content',
'status' => 'Status',
'created_at' => 'Created At',
'updated_at' => 'Updated At',
];
}
访问http://yii.local/index.php?r=gii
,并选择Model Generator
生成数据模型。在生成代码页面中,填写表名和模型名称,并点击Preview
预览生成的代码。
以上就是Yii的安装和配置的完整攻略,通过本教程的学习,你已经可以开始使用Yii进行Web应用开发了。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Yii学习总结之安装配置 - Python技术站