drb0901500211 2017-03-05 15:42
浏览 198
已采纳

Codeigniter自定义404页面,适用于不同的控制器

I need assistance to get the correct method to display a custom 404 error page, for differect controllers. I have home, welcome as my controllers, but default controller is welcome. When the user Logs in, they are redirected to home. I need each of this conrtollers to have their own custom 404 error page.

  • 写回答

1条回答 默认 最新

  • dongtang8678 2017-03-05 19:17
    关注

    Set up a custom 404 controller in the application/config/routes.php file.

    $route['404_override'] = 'my404controller';

    Create a My404controller and handle all the 404 errors in the index() using $this->uri->segment(0).

    <?php defined('BASEPATH') OR exit('No direct script access allowed');
    
      class My404controller extends CI_Controller {
    
      function __construct() {
        parent::__construct();
      }
    
      public function index() {
    
      // $this->uri->segment(1) is *original* controller segment before routing.
    
      set_status_header(404); // set 404 header
    
      if ($this->uri->segment(1) == 'home') {
         $this->load->view('home/home404');
         return;
      }
    
      if ($this->uri->segment(1) == 'admin') {
         $this->load->view('admin/admin404');
         return;
      }
    
      if ($this->uri->segment(1) == 'blog') {
         $this->load->view('blog/blog404');
         return;
      }
    
      // If there's no match to existing controller, default to generic 404 page view.
      $this->load->view('default404');
    
      }
    }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 怎么把多于硬盘空间放到根目录下
  • ¥15 Matlab问题解答有两个问题
  • ¥50 Oracle Kubernetes服务器集群主节点无法访问,工作节点可以访问
  • ¥15 LCD12864中文显示
  • ¥15 在使用CH341SER.EXE时不小心把所有驱动文件删除了怎么解决
  • ¥15 gsoap生成onvif框架
  • ¥15 有关sql server business intellige安装,包括SSDT、SSMS。
  • ¥15 stm32的can接口不能收发数据
  • ¥15 目标检测算法移植到arm开发板
  • ¥15 利用JD51设计温度报警系统