Les fichiers .htaccess (ou "fichiers de configuration distribués") fournissent un moyen de modifier la configuration d'un répertoire, c'est-à-dire de placer un fichier contenant une ou plusieurs directives dans un répertoire de documents spécifique pour affecter ce répertoire et tous ses sous-répertoires. les commandes pouvant être utilisées sont restreintes. Les administrateurs peuvent les définir via la directive AllowOverride d'Apache.
- Les directives des sous-répertoires remplacent les directives des répertoires de niveau supérieur ou du fichier de configuration du serveur principal.
- .htaccess doit être téléchargé en mode ASCII, de préférence avec ses autorisations définies sur 644.
Emplacement du document d'erreur
Codes de retour d'erreur de demande client courants :
Autorisation 401 requise
403 Interdit
404 introuvable
Méthode 405 non autorisée
Demande 408 expirée
411 Longueur du contenu requise
412 Échec de la condition préalable
413 Entité de requête trop longue
414 URI de demande trop long
415 Type de support non pris en charge
Codes retour d'erreur de serveur courants :
500 Erreur de serveur interne
Les utilisateurs peuvent utiliser .htaccess pour spécifier leur propre page de rappel d'erreur prédéfinie. En général, les utilisateurs peuvent créer un répertoire spécial, tel que celui des erreurs, pour placer ces pages. Ajoutez ensuite les instructions suivantes au .htaccess :
Document d'erreur 404 /errors/notfound.html
Document d'erreur 500 /errors/internalerror.html
Une instruction par ligne. La signification de la première instruction ci-dessus concerne 404, c'est-à-dire que lorsque le document requis n'est pas trouvé, la page doit être affichée comme la page notfound.html dans le répertoire /errors. Il n'est pas difficile de voir que le format de syntaxe est :
Code d'erreur ErrorDocument/nom du répertoire/nom du fichier.extension
S'il y a très peu d'informations à demander, il n'est pas nécessaire de créer une page spéciale et d'utiliser le numéro HTML directement dans la commande, comme dans l'exemple suivant :
Document d'erreur 401 "
Vous n'avez pas la permission d'accéder à cette page, veuillez abandonner !
"
Protection par mot de passe de l'accès aux documents
Pour utiliser .htaccess pour définir les utilisateurs d'accès et les mots de passe correspondants aux documents d'un répertoire, la première chose à faire est de générer un document texte .htpasswd, par exemple :
Zheng : y4E7Ep8e7EYV
Le mot de passe ici est crypté et les utilisateurs peuvent trouver des outils pour crypter le mot de passe dans un codage pris en charge par .htaccess. Il est préférable de ne pas placer ce document dans le répertoire www. Il est recommandé de le placer en dehors du document du répertoire racine www, ce qui est plus sûr.
Avec le document utilisateur autorisé, vous pouvez ajouter les instructions suivantes au .htaccess :
Répertoire du serveur pour AuthUserFile .htpasswd
AuthGroupFile /dev/null (répertoire qui nécessite un accès autorisé)
AuthName EnterPassword
AuthType Basic (type d'autorisation)
require user wsabstract (utilisateurs autorisés à accéder, si vous souhaitez que tous les utilisateurs de la table soient autorisés, vous pouvez utiliser require valid-user)
Notez que les parenthèses sont les commentaires que vous avez ajoutés lors de vos études.
Refuser l'accès depuis une IP
Si je ne souhaite pas qu'un certain service gouvernemental accède au contenu de mon site, je peux l'exclure en ajoutant l'adresse IP du service dans .htaccess.
Par exemple:
commande autoriser, refuser
refuser du 210.10.56.32
refuser du 219.5.45.
permettre à tous
La deuxième ligne refuse une certaine adresse IP et la troisième ligne refuse une certaine plage IP, c'est-à-dire 219.5.45.0~219.2.45.255.
Vous voulez rejeter tout le monde ? Utilisez simplement refuser de tous. Non seulement l'adresse IP, mais également le nom de domaine peuvent être utilisés pour le définir.
Protéger les documents .htaccess
Lorsque vous utilisez .htaccess pour protéger un répertoire par mot de passe, il contient le chemin d'accès au fichier de mot de passe. Pour des raisons de sécurité, il est nécessaire de protéger le .htaccess afin que d'autres personnes ne puissent pas voir son contenu. Bien que cela puisse être fait d'autres manières, telles que les autorisations sur le document. Cependant, .htaccess lui-même peut également le faire, ajoutez simplement la directive suivante :
commande autoriser, refuser
nier de tous
Redirection d'URL
Nous pouvons repenser le site Web, déplacer des documents ou modifier le répertoire. À l’heure actuelle, les visites des moteurs de recherche ou les liens provenant d’autres sites Web peuvent mal se dérouler. Dans ce cas, vous pouvez utiliser la commande suivante pour rediriger automatiquement l'ancienne URL vers la nouvelle adresse :
Redirection /ancien répertoire/ancien nom du document, adresse du nouveau document
Ou redirigez l'intégralité du répertoire :
Rediriger l'ancien répertoire vers le nouveau répertoire
Changer le fichier de la page d'accueil par défaut
Généralement, les noms de fichiers de la page d'accueil par défaut incluent default, index, etc. Cependant, il arrive parfois qu'il n'y ait pas de fichier par défaut dans le répertoire, mais un nom de fichier spécifique, tel que pmwiki.php dans pmwiki. Dans ce cas, il est difficile pour l'utilisateur de se souvenir du nom du fichier pour y accéder. De nouveaux noms de fichiers par défaut peuvent être facilement définis dans .htaccess :
Nouveau nom de fichier par défaut de DirectoryIndex
Plusieurs listes peuvent également être répertoriées, l'ordre indiquant la priorité entre elles, par exemple :
DirectoryIndex nom de fichier.html index.cgi index.pl default.htm
Empêcher les liens dynamiques
Si vous n'aimez pas que les autres lient leurs propres images et documents sur leurs pages Web, vous pouvez également le faire via la commande htaccess.
Les instructions requises sont les suivantes :
Réécrire le moteur activé
RéécritureCond% !^$
RewriteCond % !^http://(www.)?mydomain.com...*$ [NC]
RewriteRule .(gif|jpg)$ - [F]
Si vous pensez que cela n’a pas l’air bien d’avoir une lucarne ouverte sur la page de quelqu’un d’autre, vous pouvez utiliser une image à la place :
Réécrire le moteur activé
RéécritureCond% !^$
RewriteCond % !^http://(www.)?mydomain.com...*$ [NC]
RewriteRule .(gif|jpg)$ http://www.mydomain.com/replacement nom du fichier image [R,L]
source : http://wsabstract.com/howt...