Maison  >  Article  >  développement back-end  >  Introduction à la façon dont PHP empêche l'accès direct aux fichiers .php

Introduction à la façon dont PHP empêche l'accès direct aux fichiers .php

黄舟
黄舟original
2017-07-30 09:10:142386parcourir

Cet article présente principalement des informations pertinentes sur la façon d'empêcher l'accès direct aux fichiers .php en PHP. Voici des exemples de la façon d'empêcher l'accès direct aux fichiers .php. Les amis dans le besoin peuvent s'y référer

<.>Explication détaillée de la façon dont PHP empêche l'accès direct aux fichiers .php

Afin de garantir la sécurité de l'API que nous écrivons en PHP, les méthodes d'accès autres que les interfaces doivent être interdites.

Par exemple, notre Le projet est un exemple, sous lequel se trouve le dossier dir1 et un fichier d'interface api.php La structure est : Entrez la description de l'image

At. cette fois, nous avons besoin que seul example/api .php appelle le service dans file.php, qui n'est pas accessible directement via example/dir1/file.php.

Il existe une telle variable $_SERVER en php, qui est une variable de tableau contenant diverses clés. Paire de valeurs, vous pouvez rechercher des informations spécifiques. Ensuite, nous pouvons maintenant obtenir le nom du script via SCRIPT_NAME dans $_SERVER['SCRIPT_NAME'], sa valeur sera similaire à xxx/. api.php, alors nous pouvons juger si le lien d'accès contient api.php détermine si l'accès est légal. S'il est légal, l'exécution continuera, sinon, elle sera bloquée

Le spécifique. le code est le suivant :


if(strpos($_SERVER[&#39;SCRIPT_NAME&#39;], &#39;api.php&#39;) === false){
  echo "error";
  exit;
}
Ajoutez le code ci-dessus au début du fichier.php.

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