Maison  >  Article  >  développement back-end  >  Parlons de la façon de désactiver l'affichage du code en PHP (exemple de code)

Parlons de la façon de désactiver l'affichage du code en PHP (exemple de code)

PHPz
PHPzoriginal
2023-04-03 18:53:221128parcourir

PHP est un langage de programmation côté serveur couramment utilisé qui est souvent utilisé avec des langages frontaux tels que HTML et CSS pour créer divers sites Web et applications. Au cours du processus de développement, les programmeurs doivent souvent réviser le code écrit par eux-mêmes ou par d’autres pour le déboguer ou le modifier. Cependant, parfois, pour des raisons telles que la protection de la sécurité du code ou le maintien de la sécurité du serveur, il est nécessaire d'interdire à certains utilisateurs ou programmes de visualiser le code PHP.

Alors, comment écrire le code pour désactiver l'affichage du code en PHP ?

Tout d'abord, afin d'assurer la fonction de désactivation de l'affichage du code PHP, il est recommandé de stocker le code dans un dossier autre que le répertoire racine du site. Parce que lors de l'accès à un site Web, tous les fichiers du répertoire racine du site Web sont directement accessibles s'ils sont stockés dans un répertoire racine autre que le site Web, la sécurité peut être accrue.

Deuxièmement, dans le code PHP, nous pouvons utiliser les méthodes suivantes pour interdire l'affichage du code :

Méthode 1 : Interdire via le fichier de configuration Apache

Vous pouvez ajouter le code suivant au fichier de configuration Apache (fichier httpd.conf ) :

<Files *.php>
   deny from all
</Files>

Ce que ce code signifie : empêchez tout le monde d'accéder à tous les fichiers PHP. Cette méthode est très efficace car Apache vérifiera d'abord le fichier httpd.conf avant d'exécuter la demande de fichier. Le définir ici peut garantir que l'affichage de tous les fichiers PHP sera interdit. L'inconvénient est que si vous avez besoin de visualiser le code, vous devez modifier la configuration du fichier, ce qui est plus fastidieux.

Méthode 2 : Mettre le code PHP dans une classe

Mettre du code PHP dans une classe peut effectivement interdire le code d'accès non-objet. Le code est le suivant :

class SecretCode {
   private $code = "这里是php代码";
   function showCode($password) {
      if($password != "mypassword") {
         exit("访问被拒绝");
      }
      echo "$this->code";
   }
}

$myCode = new SecretCode();
$myCode->showCode("mypassword");

Dans le code ci-dessus, le code PHP est encapsulé dans une classe, et le code ne sera affiché que lorsque la méthode showCode() est appelée et que le mot de passe correct est saisi. L’avantage de cette méthode est qu’elle permet de contrôler efficacement la sécurité du code. L’inconvénient est que pour certaines personnes, exiger des opérations de mot de passe supplémentaires peut sembler fastidieux et le coût de développement est relativement élevé.

Méthode 3 : Utiliser .htaccess pour interdire

L'utilisation de fichiers .htaccess peut contrôler l'accès aux fichiers de manière très flexible sans modifier le fichier de configuration du serveur. Mettez le code suivant dans le fichier .htaccess :

<Files *.php>
  Order deny,allow
  Deny from all
</Files>

La signification de ce code est : interdire à tout le monde d'accéder à tous les fichiers PHP. L'avantage de cette méthode est qu'elle peut contrôler de manière flexible les autorisations d'accès aux fichiers et n'affectera pas le fonctionnement d'autres sites Web ou serveurs. L'inconvénient est qu'il peut entrer en conflit avec d'autres paramètres et nécessiter une attention particulière.

Résumé :

Parce que PHP est un langage open source, il existe encore quelques difficultés dans la protection des programmes. Cependant, nous pouvons améliorer la sécurité du code grâce à certaines méthodes pour protéger les fichiers PHP contre la demande ou l'exploitation par des utilisateurs ou des programmes non autorisés. Vous pouvez choisir la méthode appropriée pour utiliser les trois méthodes ci-dessus en fonction des besoins de votre propre projet afin d'obtenir de meilleurs résultats.

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