# micro-hau **Repository Path**: toshcn/micro-hau ## Basic Information - **Project Name**: micro-hau - **Description**: 用Yii2定制自己的API框架 - **Primary Language**: Unknown - **License**: BSD-3-Clause - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 1 - **Created**: 2022-04-12 - **Last Updated**: 2024-06-18 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README

Hau is a Yii2 API Template


Hau 是用Yii2框架搭建的API模板 [Yii 2](http://www.yiiframework.com/) . Documentation is at [README.md](https://gitee.com/toshcn/micro-hau/README.md). [![Latest Stable Version](https://img.shields.io/packagist/v/yiisoft/yii2-app-advanced.svg)](https://packagist.org/packages/yiisoft/yii2-app-advanced) [![Total Downloads](https://img.shields.io/packagist/dt/yiisoft/yii2-app-advanced.svg)](https://packagist.org/packages/yiisoft/yii2-app-advanced) [![Build Status](https://travis-ci.org/yiisoft/yii2-app-advanced.svg?branch=master)](https://travis-ci.org/yiisoft/yii2-app-advanced) DIRECTORY STRUCTURE ------------------- ``` api components/ api组件类目录 config/ api配置 controllers/ 控制器类存放目录 models/ 公共模型类和表单类目录 模型类与数据库表一一对应 modules/ 模块分类目录 runtime/ 运行时目录 web/ Web 应用根目录,包含 Web 入口文件 index.php 应用入口文件 common actions/ 公共控制器动作类目录 components/ 公共组件类目录 config/ 公共配置 language/ 国际化语言相关 models/ 公共模型类和表单类目录 模型类与数据库表一一对应 common config/ 公共配置 mail/ 邮件视图view存放目录 models/ 公共模型类和表单类目录 模型类与数据库表一一对应 tests/ 测试相关:如单元测试 console config/ 控制台配置 controllers/ 控制台控制器类存放目录 (commands) migrations/ 数据库迁移文件目录 models/ 控制台模型类目录 runtime/ 运行时目录 vendor/ composer第三方依赖包目录 docs/ 文档目录 yii Yii控制台命令入口(linux):如shell控制台下运行php yii 可以看到yii命令的帮助说明 ``` Installation ### 克隆仓库代码到本地 ``` git clone https://gitee.com/toshcn/micro-hau.git ``` 配置数据库和缓存 到common\config目录下,main-local.php配置文件,配置好数据库账号密码等。缓存组件建议使用memcache或redis。 ``` [ 'db' => [ 'class' => 'yii\db\Connection', 'dsn' => 'mysql:host=localhost;dbname=hau_yii2', 'username' => 'root', 'password' => '', 'charset' => 'utf8mb4', 'tablePrefix' => 'hau_', ], 'mailer' => [ 'class' => 'yii\swiftmailer\Mailer', 'viewPath' => '@common/mail', ], 'cache' => [ 'class' => 'yii\caching\MemCache', 'servers' => [ [ 'host' => '127.0.0.1', 'port' => 11211, 'weight' => 100, ], ], 'useMemcached' => false ], ], ]; ``` ### 配置web服务器 Api接口 nginx配置如: ``` server { listen 80; server_name yourhost.com; root "/home/www/hau_yii2/api/web"; location / { index index.html index.htm index.php; try_files $uri $uri/ /index.php$is_args$args; #autoindex on; } location ~ \.php(.*)$ { fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; fastcgi_split_path_info ^((?U).+\.php)(/?.+)$; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; fastcgi_param PATH_INFO $fastcgi_path_info; fastcgi_param PATH_TRANSLATED $document_root$fastcgi_path_info; include fastcgi_params; } } ``` 本地图片 nginx配置如: ``` server { listen 80; server_name pic.yourhost.com; root "/home/www/hau_yii2/upload"; add_header Access-Control-Allow-Origin '*' always; add_header 'Access-Control-Expose-Headers' 'Authorization,X-Custom-Header,Content-Disposition'; add_header Accept-Ranges bytes; location / { } } ``` ### 数据库迁移 在当前代码根目录下,运行控制台命令php yii migrate迁移数据库, 选项yes安装全部迁移。 ``` $ php yii migrate