THINKPHP 解决模块不存在时出现空页面的问题

时间:2022-04-04 02:18:11
遇到的问题:
最近使用THINKCMF开发了一个企业网站,因为之前客户的域名变更过,然后就发现当某个模块不存在的时候就出现了空页面
THINKPHP论坛 上有人说在项目里添加一个EmptyAction.class.php,然后再写业务逻辑,结果搞了好长时间我一直都没有找到Action目录
最后才发现ThinkCmf使用的是Thinkphp3.2而作者写的是3.1
在网上逛了半天也没有解决问题,不得已还是要自己出马
 
解决方案:
  1. 在 \application\Common\Controller\目前添加“EmptyBaseController.class.php”文件
  1. <?php/**
    *@Author:HTL
    *@Email:Huangyuan413026@163.com
    *@DateTime:2015-07-1411:22:18
    *@Description:空模板控制器
    *@use:其他项目添加EmptyController文件并继承该类即可
    */namespace Common\Controller;useThink\Controller;class EmptyBaseController extendsController{function_initialize(){//项目配置文件中的配置项
    $emptyPath=C("EMPTY_PATH");//如果未配置默认的地址
    if(!$emptyPath || empty($emptyPath))$emptyPath="/";header("Location:".$emptyPath);exit();
    }
    }
     2.在所有项目的Controller目前里添加EmptyController.class.php并继承”\Common\Controller\EmptyBaseController“               
  1. <?php/**
    *@Author:HTL
    *@Email:Huangyuan413026@163.com
    *@DateTime:2015-07-1411:22:18
    *@Description:空模板控制器,直接继承\Common\Controller\EmptyBaseController即可
    */namespace Portal\Controller;class EmptyControllerextends \Common\Controller\EmptyBaseController{
    function _initialize(){
    parent::_initialize();
    }
    }
      3.在\data\conf\config.php里添加" EMPTY_PATH "项自定义当访问不存在的模块时需要跳转的页面          
  1. <?php return array('EMPTY_PATH'=>'/index.php',/*访问不存在的模块时跳转的地址*/
    //其他配置项
    );?
    >
 
参考:

THINKPHP 解决模块不存在时出现空页面的问题的更多相关文章

  1. 在Nginx上部署ThinkPHP&comma;解决Pathinfo问题

    在Nginx上部署ThinkPHP,解决Pathinfo问题 事实上.要解决nginx不支持pathinfo的问题.有两个解决思路,一是不使用pathinfo模式,二是改动nginx的配置文件,使它支 ...

  2. 使用不同的C&plus;&plus;支持库的模块混合开发时,引发异常展开不正常,抛异常竟引出一个SIGSEGV

    如果你使用gcc对一部分模块进行了GNUMake的编译,这些编译出动态库使用在Gradle编译框架下的项目.那么就有可能出现题目中的情况,使用不同的C++支持库的模块混合开发时,引发异常展开不正常. ...

  3. 解决CSharpGL使用CGCompiler时发现的几个问题

    解决CSharpGL使用CGCompiler时发现的几个问题 为了获取CSharpShadingLanguage的token流,我设计了这样一个文法: <Expression> ::= & ...

  4. 解决真机调试时Eclipse DDMS上打不开&sol;data目录的问题

    一般真机调试时DDMS里面的File Explorer是不能打开/data 目录的,不过也很容易解决. 1.首先手机要root.这个很简单,网上一大堆资料和软件. 2.仅仅root之后还不行,下载一个 ...

  5. 解决远程桌面链接时出现&quot&semi;The RPC server is unavailable&period;&quot&semi;或&quot&semi;RPC服务器不可用&quot&semi;的问题

    解决远程桌面链接时出现"The RPC server is unavailable."或"RPC服务器不可用"的问题 解决远程桌面链接时出现"The ...

  6. thinkPHP 空模块和空操作、前置操作和后置操作 详细介绍(十四)

    原文:thinkPHP 空模块和空操作.前置操作和后置操作 详细介绍(十四) 本章节:介绍 TP 空模块和空操作.前置操作和后置操作 详细介绍 一.空模块和空操作 1.空操作 function _em ...

  7. 使用AndroidStudio编写APICloud模块需要注意的地方,解决模块未定义。

    在新的版本下,使用AndroidStudio编写APICloud模块,已经非常简单了,解决模块未定义,最重要的就是要先看官方的视频! 注意在模块的module.json中name很重要,建议做到三统一 ...

  8. Android 如何解决dialog弹出时无法捕捉Activity的back事件

    Android 如何解决dialog弹出时无法捕捉Activity的back事件 在一些情况下,我们需要捕捉back键事件,然后在捕捉到的事件里写入我们需要进行的处理,通常可以采用下面三种办法捕捉到b ...

  9. 解决多人开发时使用window&period;onload的覆盖问题

    通用型小函数:解决多人开发时,同时使用window.onload事件所出现的后面的window.onload函数覆盖前面一个window.onload函数的问题. function addLoadEv ...

随机推荐

  1. MYSQL分页存储过程及事务处理

    最近给客户做的一小系统是SQLSERVER的数据库,因为特殊原因要切换到MYSQL上去,切换数据库确实让人头疼的,SQLSERVER和MYSQL的存储过程还是有很大差别的,下面是我做切换时转换的MYS ...

  2. apple开发者账号申请

    1.  登陆appleID. 2. 进入 Your Account 3. 在Account Summary 中的MemberShips中选择第一个(界面大概如下) 4.选择后进入下图. 5. yes ...

  3. When to Redis &quest; when to MongoDB&quest;

    120down voteaccepted I would say, it depends on kind of dev team you are and your application needs. ...

  4. Linux 之 rsyslog

    Linux 之 rsyslog 系统日志转发 一.rsyslog 介绍 ryslog 是一个快速处理系统日志的程序,提供了高性能.安全功能和模块化设计.rsyslog 是syslog 的升级版,它将多 ...

  5. Mock4 moco框架中如何加入cookies

    新建一个 startupWithCookies.json,因为cookies也是请求当中带的,所以,要写在request里面,cookies是k-v的形式,就拿登陆来说吧,登陆以后会的cookies, ...

  6. json初接触

    <html lang="en"> <head> <meta charset="UTF-8"> <meta name=& ...

  7. 在PHP中使用MySQL Mysqli操作数据库 &comma;以及类操作方法

    先来操作函数部分,普遍的MySQL 函数方法,但随着PHP5的发展,有些函数使用的要求加重了,有些则将废弃不用,有些则参数必填... ================================= ...

  8. redis 命令select、dbsize、清空数据库、info、client

    select 切换库 dbsize 当前库中数据条数 清空数据库 flushdb | flushall 清空数据,一个是清空当前库,一个清空当前实例 查看服务器及redis相关信息 infoinfo ...

  9. 关于java8&lpar;Stream&rpar;的一些用法

    如果要处理int[] 转换成 List<Integer>这种形式的,可以用下面这个方法: List<Integer> orgIds = Arrays.stream(reqVo. ...

  10. &OpenCurlyDoubleQuote;System&period;InvalidOperationException”类型的未经处理的异常在 ESRI&period;ArcGIS&period;AxControls&period;dll 中发生

    问题描述: 新手们进行ArcGIS ArcObject开发时经常会遇到各种十分古怪的问题,比如下面的这个问题: “System.InvalidOperationException”类型的未经处理的异常 ...