wordpress CMS主题 微信
Home > PHP开发 > 如何自定义thinkphp的异常处理页面、成功处理页面、错误处理页面?

如何自定义thinkphp的异常处理页面、成功处理页面、错误处理页面?

高时银博客 PHP开发 点击: 428 次 0 1
  • 标签:
  • 在通过thinkphp开发网站时,如果使用thinkphp的默认的异常处理页面、成功处理页面、错误处理页面(如下图),很容易就让浏览者知道这是通过thinkphp程序开的网站,这很容易被一些别有用心的人利用——而遭受攻击。thinkphp开发者早就为我们想到这一点了,所以,thinkphp提供了自定义异常处理页面、成功处理页面、错误处理页面的功能。那么,如何自定义thinkphp异常处理页面、成功处理页面、错误处理页面呢?

    如何自定义thinkphp的异常处理页面、成功处理页面、错误处理页面?

    第一步:重新配置“异常处理页面、成功处理页面、错误处理页面”

    找到项目的配置文件 config.php  ,在 conf 文件夹下,然后在 config.php 返回数组里添加如 新的配置,代码如下:

    //自定义异常和错误提示页面 修改
    "TMPL_ACTION_ERROR"=>"Public/jump",//错误
    "TMPL_ACTION_SUCCESS"=>"Public/jump",//成功
    'TMPL_EXCEPTION_FILE'=> "Public/jump",//异常

    上面代码中的 Public/jump 意思是:项目的模板文件夹中的public文件夹下的jump文件。也可以直接写成相对地址,如下:

    'TMPL_ACTION_ERROR' => MODULE_PATH.'View/Public/error.html', // 错误
    'TMPL_ACTION_SUCCESS' => MODULE_PATH.'View/Public/success.html', // 成功
    'TMPL_EXCEPTION_FILE' => MODULE_PATH.'View/Public/exception.html',// 异常

    第二步:创建处理页面——jump.html (如果模板后台缀是html)

    这里提供一个简单处理页面代码:

    <!DOCTYPE>
    <head>
    <meta charset="utf-8" />
    <title>跳转提示</title>
    <style type="text/css">
    *{ padding: 0; margin: 0; }
    body{ background: #fff; font-family: '微软雅黑'; color: #333; font-size: 16px; }
    .message{width: 400px;height: 150px;margin:auto;border:1px solid #1B8F24;margin-top: 30px;}
    .head{width: 100%;height: 30px;background: rgb(222,245,194);text-align: center;padding-top: 5px;}
    .content{height: 120px;width: 100%;}
    .success ,.error{text-align: center;margin-top: 30px;}
    .jump{text-align: center;margin-top: 20px;}
    </style>
    </head>
    <body>
    <div class="message">
    <div class="head"><span>Admin提示信息:</span></div>
    <div class="content">
    <?php if(isset($message)) {?>
    <p class="success"><?php echo($message); ?></p>
    <?php }else{?>
    <p class="error"><?php echo($error); ?></p>
    <?php }?>
    <p class="detail"></p>
    <p class="jump">
    <a id="href" href="<?php echo($jumpUrl); ?>">如浏览器没自动跳转,请点击这里...</a>
    <br />
    等待时间: <b id="wait"><?php echo($waitSecond); ?></b>
    </p>
    </div>
    </div>
    <script type="text/javascript">
    (function(){
    var wait = document.getElementById('wait'),href = document.getElementById('href').href;
    var interval = setInterval(function(){
    var time = --wait.innerHTML;
    if(time <= 0) {
    location.href = href;
    clearInterval(interval);
    };
    }, 1000);
    })();
    </script>
    </body>
    </html>

    这段代码的处理页面效果如下图:

    如何自定义thinkphp的异常处理页面、成功处理页面、错误处理页面?

    大家可以根据自己的需求来做修改,以达到自己想要的效果。如上图这样,浏览者就很难通过异常处理页面来猜测这个网站是用什么程序开发的了。好了,thinkphp异常处理页面的自定义方法就介绍到这里,希望对大家有所帮助。


    文章作者:高时银博客
    本文地址:http://wanlimm.com/77201608295155.html
    版权所有 © 转载时必须以链接形式注明作者和原始出处!

    目前还没有评论。赶快来坐沙发吧。

    发表评论