防跳墙访问核心思想:判断session是否存在。
注意:阅读Controller.class.php基类时,构造方法中看到下述代码
改变继承关系:创建一个CommonController.class.php通用控制器,该控制器继承Controller基类其他的每个控制器(如:DeptController、UserController),都继承CommonController
将_initialize()方法写入CommonController中,那么DeptController和UserController也能够继承该方法。
1.创建CommonController控制器,检测session是否存在,代码如下:
<?php namespace Admin\Controller; use Think\Controller; class CommonController extends Controller{ function _initialize(){ //检查session是否存在 if(!session('?id')){ $this->error('请先登录,再访问',U('Index/login'),3); } } }