我在路由配置中的default_controller设置为“ home.php”。
我的控制器有一个子目录,可将其称为“文件夹”。因此,如果我访问http://mysite.com/folder/,应该调用默认控制器“ folder / home.php”吗?
但是由于某种原因,这不起作用,我得到了404。访问http://mysite.com/folder/home或http://mysite.com/folder/home/index可以正常工作。除此之外,默认控制器还可以在根目录中运行(http://mysite.com加载home.php)。
有什么想法,其他人有没有经历过?我无法解决这个问题-这似乎是一个CI问题,但我找不到其他人遇到同样的问题。
至少从我的理解角度来看,该文档建议这样做应该可以正常工作:http : //codeigniter.com/user_guide/general/controllers.html#subfolders
将默认控制器设置为“ folder / home.php”意味着http://mysite.com/folder/可以正常工作。除了我希望默认控制器只是“ home.php”-不论是在根目录还是在子目录中,都应按照文档说明加载该目录中的home.php。
干杯
对于controllers文件夹中的每个子文件夹,必须在中指定一个默认控制器routes.php。内置功能$route['default_controller']不适用于子文件夹。
routes.php
$route['default_controller']
例如:用于设置folder子文件夹的默认控制器,以home将以下内容添加到/application/config/routes.php文件中:
folder
home
/application/config/routes.php
$route['folder'] = "folder/home";
这意味着与URL http://mysite.com/folder/相同http://mysite.com/folder/home。
http://mysite.com/folder/
http://mysite.com/folder/home