Yii多模块和多应用的选择?

发布于 2022-09-04 22:31:00 字数 254 浏览 14 评论 0

譬如项目需要实现:手机端、PC端、网站后台、微信端,数据互通
那么采用Yii2框架是使用多应用还是多模块合适呢?

多模块感觉契合度太高,不是太合理。

多应用又觉得各项目之间等于完全分离,而且涉及到静态资源路径问题:
1、如果在PC端上传一个图片,图片上传到PC端服务器;在手机端上传图片,图片上传到手机端服务器,那么各应用之间如何去互通访问?除非单独建立一个静态资源的服务器来公共访问。
2、那么如何去配置这个静态资源服务器呢?知道的麻烦说下。

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(5

仙气飘飘 2022-09-11 22:31:00

多模块即可
手机端、PC端、网站后台、微信端,这些都是数据的展示层
model通用,另外建议抽象一层service处理业务逻辑,这个也是视图无关的

clipboard.png

树深时见影 2022-09-11 22:31:00

我觉得可以做一个模块叫做service,其他的建立模板,通过类似于vue的东东都采用api形式和service下的api进行交互。

惜醉颜 2022-09-11 22:31:00

个人偏向多应用

参考yii2的advance项目模板

初见 2022-09-11 22:31:00

[多应用]
1 独立配置文件
2 独立域名
[多模块]
1 统一配置文件
2 统一域名

【场景】
1 对于前后台分离,例如后台需要单独的域名进行管理这个应该用多应用
2 多应用的配置完全不一样,用多应用比较方便,配置文件使用不同的
3 多应用需要更多的域名配置,比价麻烦,对于小项目也不区分域名,多模块比较好

【总结】
1 应用和模块类似于多层文件目录 应用-模块-控制器-方法,至少要判断3层或者4层是否可以满足现有结构即可
2 不管多应用还是多模块,只有控制器是需要分开的,其他的类文件都可以复用
3 总体来说就是分组的一种方式,特点就是应用需要独立域名

【建议】
1 我建议你的网站后台最好独立出去,前后台服务器权限不一样最少多域名用应用
2 接口也建议独立成应用,这样比较方便不进入cdn还可以做基于域名的流控系统
3 网站类的我建议放一个应用,部分静态页可能会进入CDN缓存,静态内容也不用太纠结安全问题

留蓝 2022-09-11 22:31:00

图片描述

lib 是公共库
site_api 是接口工程
site_dev 是开发工具相关工程(不上传目录到生产环境,不用改config就隔离了比如 gii 之类的)
vender
www 是 web 主目录

api.php 接口工程入口文件
dev.php 开发工具相关入口文件

你需要其他的话直接
site_mobile
site_web
site_admin
site_wechat
可以共用 lib 的库,也可以在自己的目录下放私有 components
各个网站独立入口文件,需要合并入口的,用多模块即可

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文