我是yii的初学者
我创建了一个结构来处理前端和后端的文件,这样就可以将公共文件用于两个文件并将不同的文件用于文件夹
框架/(此文件夹将包含所有yii框架核心文件夹和文件) 资产/ JS /
前端/
公共/
后端/
API
图像/ 存储/
保护/ 组件/ 配置
main.php(数据库,电子邮件等......)
控制器/
前端/
后端/
视图/
前端/
后端/
模型/ 扩展/ 模块/
运行/ 的index.php htaccess的
此结构是为预订应用程序创建的。 一些常见文件在它们之间共享它将在controller /和views /中存在 和differnrt文件将在controller / frontend /和controller / backend /
中实施例 我在两个文件夹中都有文件,如下所示
控制器/ SiteController.php
前/ SiteController.php
后端/ SiteController.php
视图/ 布局/
前/布局
后端/布局
现在的问题是如何才能设置.htaccess 当我写http://myapp.com/index.php - >将访问前端的所有文件 和 http://myapp.com/backend/inex.php - >将访问后端文件(视图和控制器)
答案 0 :(得分:0)
将 .htaccess 和 index.php 复制到[ / backend / ]文件夹。然后在新的 index.php 中更改配置的路径,与主要路径不同。 E.g。
$config=dirname(__FILE__).'/../../'.YII_PROTECTED.'/config/admin.production.php';
并独立为后端创建自己的配置。
因此,您可以使用任何常见的视图,控制器或模型,但最重要的是使用UrlManager控制它。以下是my personal site 的示例(您可以在外部测试其URL逻辑):
<强>前端强>
'urlManager'=>array(
'urlFormat'=>'path',
'showScriptName'=>false,
'urlSuffix' => '/',
'rules'=>array(
'<controller:profile>/' => '<controller>/index/',
'<controller:profile>/<action:cv>/<project:\w+>' => '<controller>/portfolio/',
'<controller:profile>/<action>' => '<controller>/<action>/',
'<controller:blog>/' => '<controller>/index/',
'<controller:blog>/<postID:[0-9]+>.html' => '<controller>/post/',
),
),
<强>后端强>
'rules'=>array(
'/' => 'autoadmin/default/index',
'<controller:\w+>' => 'autoadmin/<controller>/index',
'<controller:\w+>/<action:\w+>' => 'autoadmin/<controller>/<action>',
),
后端查看AutoAdmin CMS,它作为模块执行。
两者都使用相同的文件结构,但每个都可以使用任何常见的东西(很可能是模型)。