# lqsblog-backend-php-thinkphp
lqsblog-backend-php-thinkphp (opens new window) (opens new window) 是一个PHP API后端服务,它基于 ThinkPHP 6.x (opens new window) 实现(Composer + thinkphp6 + RBAC + Jwt(+ 自动刷新) + Restful)。
# 功能
- 登录 / 注销 (shiro + jwt 验证,自动刷新jwt)
- 首页 / 统计
- 随笔
- 作品
- 专题
- 左邻右舍
- 设置
- 关于我
- 标签
- 账号
- 角色
- 后台菜单
- 后台API
- 站点配置
1
2
3
4
5
6
7
8
9
10
11
12
13
14
2
3
4
5
6
7
8
9
10
11
12
13
14
# 技术选型
- 核心框架:ThinkPHP 6.x
- 安全框架:自定义 RBAC
- 会话管理: JWT
- api风格:restful
# 运行环境要求
- PHP7.1+,兼容PHP8.0
- MySQL5.7 +
# 目录结构
本项目已经为你生成了一个完整的开发框架,下面是整个项目的目录结构。
├── app # 应用
│ │── controller # 控制器
│ │ │── admin # admin后台api接口控制器
│ │ └── pc # pc前台api接口控制器
│ │── middleware # 中间件目录
│ │── model # 模型
│ │── service # 业务逻辑层
│ │ │── admin # admin后台api接口业务逻辑层
│ │ └── pc # pc前台api接口业务逻辑层
│ │── validate # 验证器
│ │── AppService.php # 应用服务类
│ │── common.php # 应用公共文件
│ │── event.php # 事件定义文件
│ │── ExceptionHandle.php # 应用异常处理类
│ │── middleware.php # 全局中间件定义文件
│ │── provider.php # 容器Provider定义文件
│ │── Request.php # 应用请求对象类
│ └── service.php # 系统服务定义文件
├── config # 配置目录
│ ├─app.php # 应用配置
│ ├─cache.php # 缓存配置
│ ├─console.php # 控制台配置
│ ├─cookie.php # Cookie配置
│ ├─database.php # 数据库配置
│ ├─filesystem.php # 文件磁盘配置
│ ├─lang.php # 多语言配置
│ ├─log.php # 日志配置
│ ├─middleware.php # 中间件配置
│ ├─route.php # URL和路由配置
│ ├─session.php # Session配置
│ ├─trace.php # Trace配置
│ └─view.php # 视图配置
├── extend # 自定义扩展目录
├── public # WEB目录(对外访问目录)
├── route # 路由定义目录
│ ├─route.php # 路由定义文件
│ └─ ...
├── runtime # 应用的运行时目录(可写,可定制)
├── vendor # Composer类库目录
├── view # 视图目录
├── .example.env # 环境变量示例文件
├── composer.json # composer 定义文件
├── README.md # README 文件
└── think # 命令行入口文件
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
TIP
你也可以参照 thinkphp目录结构 (opens new window) 文档。
# 本地开发
# 下载sql,导入mysql 数据库
https://github.com/lqsong/lqsblog/blob/master/database/lqsblog-backend-php-thinkphp.sql
# 克隆项目
git clone https://github.com/lqsong/lqsblog-backend-php-thinkphp.git
# 进入项目目录
cd lqsblog-backend-php-thinkphp
# 复制 `.example.env` 重命名为`.env` 并修改对应参数
APP_DEBUG = false
[APP]
DEFAULT_TIMEZONE = Asia/Shanghai
[DATABASE]
TYPE = mysql
HOSTNAME = 127.0.0.1
DATABASE = test
USERNAME = username
PASSWORD = password
HOSTPORT = 3306
CHARSET = utf8mb4
PREFIX = lqs_
DEBUG = true
[CROSS]
allow_origin = *
allow_methods = GET, POST, PATCH, PUT, DELETE, OPTIONS
allow_credentials = 'true'
allow_headers = lqsblog-token, Content-Type
max_age = 0
[FILESYSTEM]
upload_weburl = http://127.0.0.1:8088/uploads
[LANG]
default_lang = zh-cn
# 安装
composer install
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
TIP
注:数据库后台默认用户名、密码分别是:admin / 123456