我的Yii 2应用程序的目录结构应该是什么?使用Yii 2视图真的有意义吗?还是我必须创建一个AngularJS应用程序目录并将Yii应用程序放在其中一个文件夹中?
解释是什么?
答案 0 :(得分:9)
我建议您将后端(Yii 2)和前端(AngularJS)拆分为两个单独的文件夹。死苍蝇和肉丸应单独提供。 Yii 2只提供服务器API,而AngularJS则提供所有其他功能。
project/
backend/ // Yii2 app
web/ // Public visible backend folder
index.php // Entry point
config/
controllers/
models/
...
frontend/
app/ // Your AngularJS application here
css/ // Styles (.less or .css)
img/ // Images
lib/ // Third-party libraries such as jQuery or AngularJS
js/ // .js files (controllers, services, etc.)
partials/ // Templates (.html)
index.html
tests/ // AngularJS tests
node_modules/
...
应该以这种方式配置Web服务器:
http://mycoolsite.com/api/*
向project/backend/web/
; http://mycoolsite.com/*
向project/frontend/app/
提出请求。如果您将Apache用作Web服务器,mod_alias可以为您提供帮助。
请注意,backend
或frontend
目录中的文件夹结构可能会有所不同。
backend
,它取决于您喜欢的模板(基本或高级)。在我的例子中,我使用了基本的。frontend
,它取决于您的AngularJS应用程序组织。在示例中,我使用了AngularJS教程应用程序,但对于大型应用程序,最好使用modular结构。