Php 默认控制器为';t使用Codeigniter 3.1.10中的控制器子目录

Php 默认控制器为';t使用Codeigniter 3.1.10中的控制器子目录,php,codeigniter-3,Php,Codeigniter 3,我在控制器文件夹下有如下子目录: controllers --main ----home.php ----login.php --admin ----home.php ----login.php 那么,当进入“example.com”时,如何使默认控制器加载main/home.php? 正如我读到的,我无法在CI 3的$route['default_controller']中添加目录。 所以我这样做了: 在config/routes.php中 $route['default_controlle

我在控制器文件夹下有如下子目录:

controllers
--main
----home.php
----login.php
--admin
----home.php
----login.php
那么,当进入“example.com”时,如何使默认控制器加载main/home.php?

正如我读到的,我无法在CI 3的$route['default_controller']中添加目录。 所以我这样做了:

在config/routes.php中

$route['default_controller'] = 'Home';
$route['Home'] = "main/home";
在config/config.php中

$config['base_url'] = 'www.example.com';
$config['index_page'] = '';
.htaccess

RewriteEngine on
RewriteCond $1 !^(index\.php|resources|robots\.txt)
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php/$1 [L,QSA] 
因此,当我键入example.com时,CI不会将我重定向到main/home.php
如何解决此问题?

您能否静态访问
main/home
?您是否尝试过
$route['default_controller']='main/home'?是的,我可以静态访问主/主,是的,我尝试了“$route['default_controller']='main/home'',但没有工作,因为目录在CI-3中不工作。为什么不创建一个定义的核心控制器,用文件夹/子文件夹旋转重定向您并将其扩展到您的控制器?:)只是一个想法。中的MY_Router.php似乎可以工作。我试过了,它“似乎”能满足你的需要。你能静态访问
main/home
吗?您是否尝试过
$route['default_controller']='main/home'?是的,我可以静态访问主/主,是的,我尝试了“$route['default_controller']='main/home'',但没有工作,因为目录在CI-3中不工作。为什么不创建一个定义的核心控制器,用文件夹/子文件夹旋转重定向您并将其扩展到您的控制器?:)只是一个想法。中的MY_Router.php似乎可以工作。我试过了,它“似乎”能满足你的需求。