Maison >développement back-end >tutoriel php >À propos de la méthode de configuration des pages d'état http telles que 404 et 403 dans le framework thinkPHP5

À propos de la méthode de configuration des pages d'état http telles que 404 et 403 dans le framework thinkPHP5

不言
不言original
2018-06-19 15:56:132854parcourir

Cet article présente principalement la méthode de définition des pages d'état 404, 403 et autres dans le framework thinkPHP5. Il analyse la configuration associée du framework thinkPHP5 définissant la page 404, la page d'affichage de la vue et les compétences opérationnelles associées aux appels du contrôleur sous la forme d'exemples. Amis qui en ont besoin Vous pouvez vous référer à ce qui suit

Cet article décrit comment définir les pages d'état 404, 403 et autres dans le framework thinkPHP5. Partagez-le avec tout le monde pour votre référence, les détails sont les suivants :

Pour ce faire, désactivez d'abord le mode débogage dans votre fichier de configuration (il doit être activé pendant la phase de développement) :

'app_debug' => false,

Configurez ensuite le chemin du modèle de 404 et des autres pages dans le fichier de configuration config.php (APP_PATH fait référence au chemin de l'application) :

'http_exception_template'  => [
    // 定义404错误的重定向页面地址
    404 => APP_PATH.'404.html',
    // 还可以定义其它的HTTP status
    401 => APP_PATH.'401.html',
    403 => APP_PATH.'404.html',
  ],

La page 404 se trouve dans le répertoire de l'application. La partie 404.html du code est la suivante :

<img src="__INDEX__/img/404.png" width="818" height="595" style="display: block;margin: 0 auto;">
<p class="" style="font-size: 36px;margin: 0 auto;text-align: center;color: #323232;">
  您查找的页面不存在,还有
  <span id="dd" style="color:darkorange;font-weight: bold;">6</span>
  秒,页面将自动跳转首页...
</p>
<!--倒计时-->
<script type="text/javascript">
function run(){
  var s = document.getElementById("dd");
  if(s.innerHTML == 0){
    window.location.href=&#39;/&#39;;
    return false;
  }
  s.innerHTML = s.innerHTML * 1 - 1;
}
window.setInterval("run();", 1000);
</script>

Test du contrôleur

if (Request::instance()->isAjax()) {
  $data = input();
  $info = [];
  $where = &#39;&#39;;
  switch ($data[&#39;msg&#39;]) {
  case &#39;验证码&#39;:
    $info = [
    &#39;y&#39; => &#39;输入正确&#39;,
    &#39;n&#39; => &#39;输入错误&#39;,
    ];
  $where = session::get(&#39;admin_login_session&#39;) == md5($data[&#39;param&#39;]);break;
 }
 if ($where) {
  echo &#39;{"info":"&#39; . $data[&#39;msg&#39;] . $info [&#39;y&#39;] . &#39;","status":"y"}&#39;;//注意ValidForm返回格式(json)
 } else {
  echo &#39;{"info":"&#39; . $data[&#39;msg&#39;] . $info [&#39;n&#39;] . &#39;","status":"n"}&#39;;//注意ValidForm返回格式(json)
 }
}else{
 throw new \think\exception\HttpException(403, &#39;~~~非法请求~~~&#39;);
}

L'effet 404 est le suivant :

Ce qui précède est l'intégralité du contenu de cet article, j'espère qu'il vous sera utile. L'apprentissage de tout le monde est utile. Pour plus de contenu connexe, veuillez faire attention au site Web PHP chinois !

Recommandations associées :

À propos de la méthode ThinkPHP d'utilisation de la bibliothèque d'adresses UTFWry pour le positionnement IP

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn