## 简介 <br> 本章完成`api`目录的创建。 <br> 本教程承接[野山参之yii2基础教程](https://www.kancloud.cn/wordstorm/yii2),在其基础之上继续开发。 <br> 将根目录(后续根目录以`~`代替,在我的虚拟机环境下代表`/home/vagrant/projects/yii-application/`)下的`backend`复制一份,重命名为`api`即可。 <br> 接下来使用`gii`来完成基础目录的构建,当然你也可以手建,[使用gii构建目录结构](https://www.yiichina.com/doc/guide/2.0/start-gii) <br> ## 创建虚拟域名 <br> 和\[野山参系列之yii2基础教程\]()中一样,需要在虚拟机和主机中分别创建对应的虚拟域名。本教程是`api`开发,域名设置为`api.yii2.com`。 <br> 如下图,虚拟机中设置虚拟域名,7个设置步骤中,重点在2,3。 <br> ![](https://img.kancloud.cn/f7/f7/f7f7bc92d2e2d05d4ded35e4014ddcc9_842x855.png) <br> 主机中配置一行`192.168.20.30 api.yii2.com`即可。虚拟机`ip`地址可通过`ip addr`查看。 <br> ## 编辑入口文件 <br> 编辑`index.php` <br> ``` ... if (YII_ENV_DEV) {     $config['bootstrap'][] = 'gii';     $config['modules']['gii'] = [         'class' => 'yii\gii\Module',         'allowedIPs' => ['192.168.*.*']     ]; } ... ``` <br> 编辑`~/common/config/bootstrap.php`,新增一行 <br> ``` ... Yii::setAlias('@api', dirname(dirname(__DIR__)) . '/api'); ... ``` <br> [使用gii创建module、controller、model](https://www.php.cn/phpkj/yii/434590.html),这里主要参考第三步 **利用gii生成测试modules**,(小技巧:ctrl+f 可快速帮助定位) <br> 这里沿用`yii2基础教程`中创建的表`title`。 <br> 最终应该拿到这样的目录结构,`api`文件夹之下 <br> ``` |-config |   ... |   main.php |-models |   Title.php |-modules     |-v1         |-controllers         |   DefaultController.php         |   TitleController.php         |-views         Module.php |-web |   index.php ``` <br> ## 框架配置 <br> 编辑`~/api/config/main.php`文件,特别注意下层级结构 ``` ... 'modules' => [         'v1'=>[             'class'=>'api\modules\v1\Module',         ]     ], ... 'components'=>[     ...     'response'=>[         'class'=>'yii\web\Response',         'format'=>\yii\web\Response::FORMAT_JSON,     ],     ...     'urlManager' => [         'enablePrettyUrl' => true,         'showScriptName' => false,         'enableStrictParsing' => false,         'rules' => [             [                 'class'=>'yii\rest\UrlRule',                 'controller'=>['v1/title']             ]         ],     ], ] ... ``` <br> 到这里,`api`开发的基础配置就已经完成,下面将进入正式的`api`开发。 <br>