Php 如何访问子目录中的控制器;应用程序/控制器“;当$config[';enable#query#strings';]=TRUE时

Php 如何访问子目录中的控制器;应用程序/控制器“;当$config[';enable#query#strings';]=TRUE时,php,codeigniter,codeigniter-routing,Php,Codeigniter,Codeigniter Routing,my codeigniter应用程序配置: $config['enable_query_strings'] = TRUE; $config['uri_protocol'] = 'PATH_INFO'; 所以我可以这样访问我的应用程序:index.php?c=index&m=about 但我在“application/controllers/setting/”目录中有一个名为user.php的控制器 如果启用了mod_rewrite,我可以访问: index.php/setting/user/s

my codeigniter应用程序配置:

$config['enable_query_strings'] = TRUE;
$config['uri_protocol'] = 'PATH_INFO';
所以我可以这样访问我的应用程序:
index.php?c=index&m=about

但我在“application/controllers/setting/”目录中有一个名为user.php的控制器

如果启用了mod_rewrite,我可以访问:
index.php/setting/user/somethod

但我如何像这样访问它:
index.php?c=setting/user&m=somethod
结果是404未找到

日志文件显示:

错误-2011-08-11 08:03:07-->找不到404页-->设置用户

编辑

答复:


index.php?d=setting&c=user&m=somethod

您可以这样访问它们

index.php?d=setting&c=user&m=someMethod
如果有子目录,则需要目录触发器。 它在您的
config.php
文件中,但它有
experimental
注释

$config['allow_get_array'] = TRUE;
$config['enable_query_strings'] = TRUE;
$config['controller_trigger'] = 'c';
$config['function_trigger'] = 'm';
$config['directory_trigger'] = 'd'; // experimental not currently in use

您可以这样访问它们

index.php?d=setting&c=user&m=someMethod
如果有子目录,则需要目录触发器。 它在您的
config.php
文件中,但它有
experimental
注释

$config['allow_get_array'] = TRUE;
$config['enable_query_strings'] = TRUE;
$config['controller_trigger'] = 'c';
$config['function_trigger'] = 'm';
$config['directory_trigger'] = 'd'; // experimental not currently in use

当您试图通过上述URL访问页面时,CI日志会说什么?@BigFatBaby:
错误-2011-08-11 08:03:07-->404找不到页面-->设置用户
两个名称合并在一起。如果您在不重写mod_的情况下访问页面,则斜杠肯定不正确。但正确的钥匙到底是什么还不确定。但必须是类似于&t=user的东西(不确定t或其他什么)@可怕的分号:你们启发了我,问题解决了。非常感谢。哦,你已经知道答案了。英雄联盟p当您试图通过上述URL访问页面时,CI日志会说什么?@BigFatBaby:
错误-2011-08-11 08:03:07-->404找不到页面-->设置用户
两个名称合并在一起。如果您在没有修改的情况下访问页面,斜杠肯定不正确。但正确的钥匙到底是什么还不确定。但必须是类似于&t=user的东西(不确定t或其他什么)@可怕的分号:你们启发了我,问题解决了。非常感谢。哦,你已经知道答案了。英雄联盟pso如果我有多个目录,比如“application/controllers/setting/test/user.php”,codeigniter不支持它,只允许一级子目录来组织控制器,那么如果我有多个目录,比如“application/controllers/setting/test/user.php”,codeigniter不支持它呢,仅允许一级子目录用于组织控制器。