这篇文章主要介绍了thinkPHP5框架设置404、403等http状态页面的方法,结合实例形式分析了thinkPHP5框架设置404页面的相关配置、视图显示页面及控制器调用相关操作技巧,需要的朋友可以参考下
本文实例讲述了thinkPHP5框架设置404、403等http状态页面的方法。分享给大家供大家参考,具体如下:
要做到这一点,首先要在你的配置文件将调试模式关闭(在开发阶段要打开):
'app_debug' => false,
然后在配置文件 config.php 中配置404等页面的模板路径(APP_PATH指的是application路径):
'http_exception_template'  => [
    // 定义404错误的重定向页面地址
    404 => APP_PATH.'404.html',
    // 还可以定义其它的HTTP status
    401 => APP_PATH.'401.html',
    403 => APP_PATH.'404.html',
  ],
404页面位于 application 目录下,404.html部分代码如下:
<img src="__INDEX__/img/404.png" width="818" height="595" style="display: block;margin: 0 auto;">
<div class="" style="font-size: 36px;margin: 0 auto;text-align: center;color: #323232;">
  您查找的页面不存在,还有
  <span id="dd" style="color:darkorange;font-weight: bold;">6</span>
  秒,页面将自动跳转首页...
</div>
<!--倒计时-->
<script type="text/javascript">
function run(){
  var s = document.getElementById("dd");
  if(s.innerHTML == 0){
    window.location.href='/';
    return false;
  }
  s.innerHTML = s.innerHTML * 1 - 1;
}
window.setInterval("run();", 1000);
</script>
测试 controller
if (Request::instance()->isAjax()) {
  $data = input();
  $info = [];
  $where = '';
  switch ($data['msg']) {
  case '验证码':
    $info = [
    'y' => '输入正确',
    'n' => '输入错误',
    ];
  $where = session::get('admin_login_session') == md5($data['param']);break;
 }
 if ($where) {
  echo '{"info":"' . $data['msg'] . $info ['y'] . '","status":"y"}';//注意ValidForm返回格式(json)
 } else {
  echo '{"info":"' . $data['msg'] . $info ['n'] . '","status":"n"}';//注意ValidForm返回格式(json)
 }
}else{
 throw new \think\exception\HttpException(403, '~~~非法请求~~~');
}
404效果如下图:

更多关于thinkPHP相关内容感兴趣的读者可查看本站专题:《ThinkPHP入门教程》、《thinkPHP模板操作技巧总结》、《ThinkPHP常用方法总结》、《codeigniter入门教程》、《CI(CodeIgniter)框架进阶教程》、《Zend FrameWork框架入门教程》及《PHP模板技术总结》。
希望本文所述对大家基于ThinkPHP框架的PHP程序设计有所帮助。
本文标题为:thinkPHP5框架设置404、403等http状态页面的方法
				
        
 
            
        - windows下9款一键快速搭建PHP本地运行环境的好工具(含php7.0环境) 2023-09-02
 - laravel实现按月或天或小时统计mysql数据的方法 2023-02-22
 - PHP简单实现二维数组的矩阵转置操作示例 2022-10-02
 - 用nohup命令实现PHP的多进程 2023-09-02
 - PHP仿tp实现mvc框架基本设计思路与实现方法分析 2022-10-18
 - Laravel balde模板文件中判断数据为空方法 2023-08-30
 - PHP中PDO事务处理操作示例 2022-10-15
 - laravel通用化的CURD的实现 2023-03-17
 - PHP实现微信支付(jsapi支付)流程步骤详解 2022-10-09
 - php微信公众号开发之秒杀 2022-11-23
 
						
						
						
						
						
				
				
				
				