有没有搞 ThinkPHP 的,多模块多域名下配置 Smarty 模板引擎无效。求救啊!!!!!!

2015-03-12 01:23:12 +08:00
 edire

下面是配置 如果我把APP_SUB_DOMAIN_DEPLOY去掉是可以启动Smart的。

Application/Common/Conf/config.php

return array(
            //'配置项'=>'配置值'
            'TMPL_ENGINE_TYPE'=>'Smarty',
            'MODULE_ALLOW_LIST'     =>  array(
                    'Pc',
                    'Wap',
            ),
            'DEFAULT_MODULE'        =>  'Pc',
            'APP_SUB_DOMAIN_DEPLOY'   =>    1, // 开启子域名或者IP配置
            'APP_SUB_DOMAIN_RULES'    =>    array(
                    'test.wap.ldustu.com'=>'Wap',
                    'test.ldustu.com'=>'Pc',
                     ),
            'URL_MODEL'=>1,  //url模式  pathinfo
            'URL_CASE_INSENSITIVE' => true, //URL不区分大小写
            'SESSION_AUTO_START' => true,//是否开启session
            'DB_TYPE'               =>  'mysql',     // 数据库类型
            'DB_HOST'               =>  $_SERVER['LDSN_HOST'], // 服务器地址
            'DB_NAME'               =>  $_SERVER['LDSN_DBNAME'],          // 数据库名
            'DB_USER'               =>  $_SERVER['LDSN_USER'],      // 用户名
            'DB_PWD'                =>  $_SERVER['LDSN_PASSWD'],          // 密码
            'DB_PORT'               =>  '3306',        // 端口
            'DB_PREFIX'             =>  'ldsn_',    // 数据库表前缀
            'DB_CHARSET'            =>  'utf8',      // 数据库编码默认采用utf8

        'TMPL_TEMPLATE_SUFFIX'=>'.tpl',
        'TMPL_ENGINE_CONFIG'=>array(
            'plugins_dir'=>'./Application/Tmpl/Plugins/',
            'template_dir'=>'./Application/Tmpl/Template/',
            'config_dir'=>'./Application/Tmpl/Config/',
            'left_delimiter'=>'{%',
            'right_delimiter'=>'%}'
        ),
    );

下面是报错 test.wap.ldustu.com 明显还是自带的模板引擎

:(
    模板不存在:./Application/Wap/View/Index/index.tpl
    错误位置
    FILE: /home/wwwroot/ldustu/server/ThinkPHP/Library/Think/View.class.php  LINE: 110
    TRACE
    #0 /home/wwwroot/ldustu/server/ThinkPHP/Library/Think/View.class.php(110): E('???????????????...')
    #1 /home/wwwroot/ldustu/server/ThinkPHP/Library/Think/View.class.php(72): Think\View->fetch('', '', '')
    #2 /home/wwwroot/ldustu/server/ThinkPHP/Library/Think/Controller.class.php(56): Think\View->display('', '', '', '', '')
    #3 /home/wwwroot/ldustu/server/Application/Wap/Controller/IndexController.class.php(13): Think\Controller->display()
    #4 [internal function]: Wap\Controller\IndexController->index()
    #5 /home/wwwroot/ldustu/server/ThinkPHP/Library/Think/App.class.php(164): ReflectionMethod->invoke(Object(Wap\Controller\IndexController))
    #6 /home/wwwroot/ldustu/server/ThinkPHP/Library/Think/App.class.php(202): Think\App::exec()
    #7 /home/wwwroot/ldustu/server/ThinkPHP/Library/Think/Think.class.php(120): Think\App::run()
    #8 /home/wwwroot/ldustu/server/ThinkPHP/ThinkPHP.php(97): Think\Think::start()
    #9 /home/wwwroot/ldustu/server/index.php(24): require('/home/wwwroot/l...')
    #10 {main}
2584 次点击
所在节点    问与答
4 条回复
lmaq
2015-03-12 02:22:00 +08:00
模板不存在:./Application/Wap/View/Index/index.tpl
alex321
2015-03-12 08:27:06 +08:00
人家已经说了,模板不存在;再,注意 linux 下这货的大小写问题。
另,ThinkPHP 真是众多坑,虽说因为国产和文档问题被众多人夸赞,其实,其实,真的其实。
zts1993
2015-03-12 08:51:56 +08:00
@alex321 ThinkPHP 的坑,通常出没于非常用功能,很多人只是用了一小部分,所以没才到坑而已。。。
edire
2015-03-12 10:24:43 +08:00
@lmaq
@alex321

不是,这明显不是走的Smarty模板引擎。如果我把 子域名 关闭 访问 域名就可以走Smarty引擎,不过访问不到模块。如果后面带上 /Wap 访问单个模块,就又报上面的错误

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/176239

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX