3.2 路由不解析

浏览:4482 发布日期:2013/09/23 分类:求助交流 关键字: 路由
github 3.2

设置路由,不解析。
【已解决】3.2的路由是在模块中独立配置的 不是在项目配置文件中配置的了
这样设计的好处是避免大型应用中模块多了之后 路由文件过大 效率降低 而且这样一来 每个模块更加独立。当然缺点是模块名称本身不能通过路由改变,但可以用二级域名绑定或者 别名来调整。
【应用】    //当前模块Home
    // 路由设置
    'URL_ROUTER_ON'     => true,
    'URL_ROUTE_RULES'   => array(
        'id/:id\d' => 'Home/Index/index',
    ),
// 访问 http://xxx.com/index.php/Home/id/5
Dispatcher.class.php

// 117行 - 141行
// 获取模块名称
        define('MODULE_NAME', self::getModule($varModule));
        // 检测模块是否存在
        if( MODULE_NAME && !in_array(MODULE_NAME,C('MODULE_DENY_LIST'))  && is_dir(APP_PATH.MODULE_NAME)){
            
            // 定义当前模块路径
            define('MODULE_PATH', APP_PATH.MODULE_NAME.'/');
            // 定义当前模块的模版缓存路径
            C('CACHE_PATH',CACHE_PATH.MODULE_NAME.'/');

            // 加载模块配置文件
            if(is_file(MODULE_PATH.'Conf/config.php'))
                C(include MODULE_PATH.'Conf/config.php');
            // 加载模块别名定义
            if(is_file(MODULE_PATH.'Conf/alias.php'))
                Think::addMap(include MODULE_PATH.'Conf/alias.php');
            // 加载模块tags文件定义
            if(is_file(MODULE_PATH.'Conf/tags.php'))
                C('tags', include MODULE_PATH.'Conf/tags.php');
            // 加载模块函数文件
            if(is_file(MODULE_PATH.'Common/function.php'))
                include MODULE_PATH.'Common/function.php';
        }else{
            E(L('_MODULE_NOT_EXIST_').':'.MODULE_NAME);
        }
// 164行
    if('' != $_SERVER['PATH_INFO'] && (!C('URL_ROUTER_ON') ||  !Route::check()) ){
最佳答案
评论( 相关
后面还有条评论,点击查看>>