Introduction
Il est toujours judicieux d’ajouter une protection par mot de passe à l’un des dossiers / pages Web de votre site Web si vous souhaitez en restreindre l’accès. La méthode pour appliquer la même chose est plus importante. Nous pouvons utiliser PHP pour autoriser les informations sur chaque page, mais cela ne protège pas vos images ni aucun autre média, n'est-ce pas? Nous pouvons donc utiliser une autre méthode appelée htaccess protection par mot de passe?or authentification htaccess. C'est fiable et beaucoup plus facile.
Objectif
Ce blog vous aide à savoir comment restreindre l'accès au site Web d'utilisateurs non autorisés.
Veuillez suivre les étapes mentionnées ci-dessous:
Étape 1. Utiliser htaccess protection par mot de passe nous devons créer deux fichiers dans le répertoire dans lequel vous souhaitez restreindre l'accès: –
1) .htaccess
2) fichier .htpasswd
Étape 2. Ajoutez le code suivant dans le fichier .htaccess que vous avez créé à l'étape 1.
Le code .htaccess
AuthType Basic AuthName "No Access" AuthUserFile C: /wamp64/www/test_project/self_stitch/.htpasswd nécessite un utilisateur valide.
Remarque : Vous pouvez remplacer "C: / wamp64 / www / test_project /" par votre propre structure de répertoires. Le code ci-dessus (directives) est décrit ci-dessous:
je.) AuthType La directive AuthType vous permet de sélectionner la méthode utilisée pour authentifier l'utilisateur.
ii.) AuthName Remplacer "Pas d'accès"à n'importe quel nom selon vos besoins. Ce nom sera affiché dans la zone d'alerte lorsque l'utilisateur tentera d'ouvrir une page protégée par htaccess.AuthName?directive sets the?domain?to be used in the authentication.
Once a client has passed the authentication in the?”Pas d'accès"zone, il n’est pas nécessaire de saisir le mot de passe pour accéder à tout autre fichier de la même zone sur le même serveur. Par conséquent, empêchez un utilisateur de saisir le mot de passe encore et encore en laissant plusieurs zones restreintes partager le même domaine.
iii.) AuthUserFile
- Vous devez ajouter votre chemin .htpasswd à la place de "C: /wamp64/www/test_project/self_stitch/.htpasswd".
- Le "AuthUserFile"La valeur est toujours spécifique à votre configuration hôte.
- Si vous ne savez pas ce que la valeur devrait être, faites un
- Pour cela, il vous suffit d'ajouter la ligne "<? Php phpinfo ();?>" Dans le fichier phpinfo.php. Vous pouvez trouver le fichier phpinfo.php dans votre dossier racine (www pour localhost), puis exécuter le fichier phpinfo.php sur le navigateur. Par exemple, sur localhost, exécutez localhost / phpinfo.php
REMARQUE:
1.Pour protéger par mot de passe plusieurs fichiers dans le même dossier, créez simplement plusieurs blocs <Fichiers> </ Files> dans le même fichier .htaccess – par exemple:
AuthUserFile /full/path/to/.htpasswd AuthType Basic AuthName "Ma page secrète" <Fichiers "mypage.html"> Requiert un utilisateur valide </ Files> <Fichiers "myotherpage.html"> Requiert un utilisateur valide </ Files>.
2. Pour autoriser uniquement les utilisateurs à accéder aux types de fichiers spécifiques, vous devez ajouter le code suivant:
AuthUserFile /full/path/to/.htpasswd AuthType Basic AuthName "Ma page secrète" # nier * tout * <FilesMatch ". *"> Ordre Autoriser, Refuser Refuser de tous </ FilesMatch> # Autoriser uniquement * certains * fichiers nécessaires: <FilesMatch ". * \. (Php | html | css | js | JS | CSS) $"> Ordre Autorisé, Refus Autorisé de tous </ FilesMatch>
Ici, tout d’abord, nous limitons l’accès à tout via <FilesMatch ". *">, Après quoi nous autorisons uniquement l’accès à certains fichiers (php, html, css, js) à l’aide de <FilesMatch ". * \. (Php | html | css | js | JS | CSS) $ "> Notre exemple n'autorise pas l'accès à d'autres fichiers, par exemple. .jpg, .png, etc. Vous pouvez également autoriser l'accès depuis une adresse IP spécifique en utilisant "permettent de 12.34.56.78" à la place d'utiliser "permettre de toute“.
3. Pour ajouter un mot de passe htaccess uniquement aux types de fichiers spécifiques, vous devez ajouter le code suivant:
AuthType Basic AuthName "zone restreinte" AuthUserFile C: /wamp64/www/test_project/self_stitch/.htpasswd # mais n'autorise plus que * certains * fichiers nécessaires: <FilesMatch ". * \. (Txt) $"> nécessite un utilisateur valide <, / FilesMatch>
En utilisant le code ci-dessus, tous les fichiers seront accessibles sans mot de passe, mais les fichiers avec l'extension .txt auront besoin d'un nom d'utilisateur et d'un mot de passe.
4. Si vous devez appliquer un mot de passe htaccess à tous les fichiers sauf un, ajoutez le code suivant:
AuthType Basic AuthName "zone restreinte" AuthUserFile C: /wamp64/www/test_project/self_stitch/.htpasswd <FilesMatch ". *"> Requiert utilisateur valide </ FilesMatch> # mais n'autorise plus que * certains * fichiers * nécessaires: <FilesMatch " . * \. (txt) $ "> Requiert tous les droits </ FilesMatch>
Dans l'exemple ci-dessus, à l'exception des fichiers .txt, tous les autres fichiers auront besoin du nom d'utilisateur et du mot de passe pour pouvoir être utilisés.
iv.) exiger
La ligne "Nécessite un utilisateur valide"signifie que tout utilisateur spécifié dans votre
Étape 3. Ajoutez le nom d'utilisateur et le mot de passe dans le fichier .htpasswd comme décrit ci-dessous:
Le code .htpasswd
john:$apr1$DObQIej5$0ZmEaLN42GEz/XJEiJXh9.
je.) le
ii.) Les mots de passe sont cryptés à l’aide de MD5 à des fins de sécurité.
iii.) Comme vous pouvez le voir ci-dessus, seul l'utilisateur 1 est autorisé, c'est-à-dire avec le mot de passe John: Mot de passe actuel: egypt4721 Mot de passe crypté: $ apr1 $ DObQIej5 $ 0ZmEaLN42GEZ / XJEiJXhXNXX. (Crypté avec MD9).
iv.) Pour générer un fichier .htpasswd, utilisez le lien indiqué ci-dessous:
https://www.htaccesstools.com/htaccess-authentication/
Après avoir créé le fichier .htaccess et .htpasswd dans le répertoire que vous souhaitez protéger, une alerte sera affichée à l'ouverture de votre site Web. Veuillez vous référer à la capture d'écran ci-dessous:
Plus de détails pour télécharger un exemple de projet avec .htaccess protégé par mot de passe.