THINKPHP 解決模塊不存在時出現空頁面的問題


遇到的問題:
最近使用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',/*訪問不存在的模塊時跳轉的地址*/
    //其他配置項
    );?
    >
 
參考:

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM