Maison >développement back-end >Problème PHP >Comment empêcher les utilisateurs d'accéder directement aux fichiers en php

Comment empêcher les utilisateurs d'accéder directement aux fichiers en php

王林
王林original
2019-09-12 17:44:413238parcourir

Comment empêcher les utilisateurs d'accéder directement aux fichiers en php

Afin d'assurer 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 projet est exemple, sous lequel se trouve le dossier dir1 et le fichier d'interface api.php. La structure est :

Comment empêcher les utilisateurs daccéder directement aux fichiers en php

À l'heure actuelle, nous exigeons que les services dans file.php ne puissent être appelés que via example/api.php, et non directement via example/. dir1/fichier .php pour y accéder.

Il existe une telle variable $_SERVER en php. Il s'agit d'une variable de tableau contenant diverses paires clé-valeur. Vous pouvez rechercher des informations spécifiques. Ensuite, nous pouvons maintenant obtenir le nom du script via SCRIPT_NAME dans $_SERVER. $_SERVER['SCRIPT_NAME'], sa valeur sera similaire à xxx/api.php, alors nous pourrons juger si l'accès est légal en jugeant si le lien d'accès contient api.php, et s'il est légal, continuer l'exécution si. illégal, bloquer.

Le code spécifique est le suivant :

if(strpos($_SERVER['SCRIPT_NAME'], 'api.php') === false){
  echo "error";
  exit;
}

Ajoutez simplement le code ci-dessus au début du fichier.php.

Le contenu ci-dessus est à titre de référence uniquement !

Pour plus de questions connexes, veuillez visiter le site Web php chinois : Tutoriel vidéo 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
Article précédent:Quel fichier est php ?Article suivant:Quel fichier est php ?