有四种情况会出现此错误
1、URL中参数名中有m参数
如:
1、http://localhost/ThinkPHP_3.2/index.php?m=moduleName
2、http://localhost/ThinkPHP_3.2/index.php/a
3、http://localhost/ThinkPHP_3.2/a
2、配置文件设置DEFAULT_MODULE为空或false并且URL的m参数为空或者没有此参数 DEFAULT_MODULE默认为Home
3、模块名是Common或Runtime
4、没有Application/模块名 这个目录
下面是详细分析
if (MODULE_NAME && (!in_array_case(MODULE_NAME, C('MODULE_DENY_LIST')) || $domainModule ) && is_dir(APP_PATH . MODULE_NAME)) {
.....
}else {
E(L('_MODULE_NOT_EXIST_') . ':' . MODULE_NAME);
}
1、MODULE_NAME
如果没有获取到MODULE_NAME 即DEFAULT_MODULE为空或false并且URL的m参数为空或者没有此参数
2、(!in_array_case(MODULE_NAME, C('MODULE_DENY_LIST')) || $domainModule )
模块名是Common或Runtime 返回false 并且不是没有开启多级域名
3、is_dir(APP_PATH . MODULE_NAME)
判断模块目录是否存在