SAPI++ 是多应用、多租户、多终端的SaaS平台开发框架。基于ThinkPHP6.x的多应用模式开发,开发者不需要二次学习,就可以开发自己的多应用多租户SaaS服务平台,简单好用是SAPI++的特点。
使用GPL-3.0开源协议
框架:ThinkPHP6.x(微信开发框架)
环境:PHP8.0.2 + Mysql
系统:Windows,Linux(推荐)
PHP > 8.0.2
Nginx >= 1.14或者apache >=2.4
Mysql >= 5.7 数据库引擎InnoDB
Redis >= 5.0
PHP扩展 fileinfo,curl,openssl,simpleXML,redis,mbstring,mysqli,openssl,gd,zip
请理解并尽量遵循以下命名规范,可以减少在开发过程中出现不必要的错误。
SAPI++是基于ThinkPHP6.x开发的,目录结构和ThinkPHP6.x保持一致不变,具体请查看ThinkPHP6.x官方开发手册。
在实际的部署中,请确保只有public目录可以对外访问。在mac或者linux环境下面,注意需要设置runtime目录权限为777
├─app 应用目录
│ ├─module_name1 应用名称1
│ │ ├─common.php 函数文件
│ │ ├─config 配置目录
│ │ │ ├─admin.php 管理端菜单配置
│ │ │ ├─Tenant.php 租户端菜单配置
│ │ │ ├─version.php 应用配置信息
│ │ ├─api 控制器目录
│ │ │ ├─v1_0 API目录(目录规范v1_x_x)
│ │ │ ├─service 免签名API目录
│ │ ├─web 通过浏览器访问的控制器 url.com/web/client_id
│ │ │ ├─web PC/H5网站
│ │ │ ├─app APP内webview浏览内容
│ │ │ ├─wechatmp 公众号
│ │ │ ├─wechatapp 小程序内webview浏览内容
│ │ ├─controller 控制器目录
│ │ ├─├─admin 后台管理
│ │ ├─├─tenant 租户管理
│ │ ├─... 没有后台管理的直接在controller下创建
│ │ ├─model 模型目录
│ │ ├─view 视图目录
│ │ └─ ... 更多类库目录
│ ├─module_name2 应用名称2
│ │ └─ ... 应用接口同上
│ └─event.php 事件定义文件
│ ├─common.php 全局公共函数文件
│ ├─provider.php 服务提供定义文件
│ ├─service.php 全局系统系统服务定义文件
│ └─middleware.php 全局中间件定义文件
├─config 全局配置目录
│ ├─app.php 应用配置
│ ├─config.php SAPI++系统接入第三方配置
│ ├─filesystem.php SAPI++支持OSS/COS/七牛/本地文件上传服务的秘钥配置信息
│ ├─... 其它所有配置请查看ThinkPHP6.x官方书册
├─base SAPI++底层目录
│ ├─logic 系统扩展目录目录
│ ├─model 基础模型目录
│ ├─├─ SystemAdmin.php 系统管理员
│ ├─├─ SystemAgent.php 代理
│ ├─├─ SystemApp.php 安装应用
│ ├─├─ SystemApps.php 租户应用
│ ├─├─ SystemAppsClient.php 租户应用接入
│ ├─├─ SystemAppsConfig.php 租户应用配置
│ ├─├─ SystemAppsRelease.php 租户应用发布状态
│ ├─├─ SystemTenant.php.php 租户管理
│ ├─├─ SystemTenantBill.php 租户状态
│ ├─├─ SystemUser.php 租户会员
│ ├─├─ SystemUserRuid.php 租户会员的登录ID
│ ├─├─ SystemUserRelation.php 租户关系
│ ├─BaseController.php 基类
│ ├─BaseModel.php 模型基类
│ ├─AdminController.php 管理端控制基类
│ ├─ApiController.php API控制器基类
│ ├─TenantController.php 租户端基类
│ ├─WebController.php 网页端基类
│ ├─... 其它系统目录(无需关心不再特别注明)
├─public WEB目录(对外访问目录)
│ ├─static 模块独立静态文件目录(可写,可定制)
│ │ ├─module_name 应用名称和app目录中module_name名称保持一样
│ │ ├─├─logo.png 应用默认logo
│ │ ├─├─... 应用需要用到的资源
│ ├─res 本地资源上传目录(可写,可定制)
│ ├─install 应用安装程序(安装完后记得删除)
├─platform SAPI++管理平台目录
├─extend 扩展类库目录
├─runtime 应用的运行时目录(可写,可定制)
├─vendor Composer类库目录
├─.example.env 环境变量示例文件
├─composer.json composer 定义文件
├─LICENSE.txt 授权说明文件
├─README.md README 文件
├─think 命令行入口文件
来源:
https://www.toutiao.com/article/7085740144220848643/?log_from=672fddf8ae233_1649813542472
“IT大咖说”欢迎广大技术人员投稿,投稿邮箱:aliang@itdks.com
来都来了,走啥走,留个言呗~
IT大咖说 | 关于版权
由“IT大咖说(ID:itdakashuo)”原创的文章,转载时请注明作者、出处及微信公众号。投稿、约稿、转载请加微信:ITDKS10(备注:投稿),茉莉小姐姐会及时与您联系!
感谢您对IT大咖说的热心支持!