This page has been robot translated, sorry for typos if any. Original content here.

Fichier d'accès au serveur .htaccess

Création de site web

Paramètres d'accès au serveur de fichiers. htaccess

L'auteur: Maxim Prikhodko
Publié le 30 novembre 2005

Le système d'exploitation Unix étant le plus populaire parmi les systèmes de serveur, le serveur le plus courant n'est pas MS IIS , mais Apache (une version de ce logiciel existe toutefois pour Windows ).

Lorsque le nom de votre site est entré dans la ligne du navigateur, c'est le serveur qui décide quels fichiers afficher et comment. Et vous pouvez manipuler le fichier de paramètres afin de contrôler le fonctionnement du serveur par rapport au site Web . htaccess , dont tout changement prend effet immédiatement.

La syntaxe htaccess a une structure dure, dont le non-respect entraîne des erreurs de serveur, vous devez donc remplir les deux conditions suivantes:

  1. Les chemins d'accès aux fichiers (répertoires) sont spécifiés à partir de la racine du serveur. Par exemple: / opt / home / www.monsite.ru / htdocs / config /. mots de passe

  2. Les domaines sont spécifiés avec une indication du protocole. Par exemple: Redirect / http://www.site.ru

Le fichier doit être appelé exactement "point" htaccess et être écrit au format UNIX. En FAR, par exemple, lors de l'édition, vous pouvez appuyer sur Maj + F2 et sélectionner l'élément de menu "Enregistrer en tant que texte UNIX".

Nous donnons des exemples simples de contrôle d'accès à un site à l'aide d'un fichier. htaccess :

Interdiction de tous les fichiers:

nier de tout

Ici tout signifie "tout".

Autoriser l'accès à partir d'une adresse IP spécifique (par exemple, 192.13.237.14):

ordre permet refuser
nier de tout
autoriser à partir de 192.13.237.14

Refuser l'accès à partir d'une adresse IP spécifique (par exemple, 192.13.237.14):

ordre permet refuser
permettre à tous
refuser de 192.13.237.14

Empêcher un groupe de fichiers par masque:

<Fichiers "\ . ( Inc | sql | other extensions ) $ ">
ordre autoriser, refuser
nier de tout
</ Files>

Dans cet exemple, le serveur Web Apache lui-même peut accéder aux fichiers portant les extensions spécifiées.

Vous pouvez définir une interdiction sur un fichier spécifique par son nom complet ( par exemple , config.inc.php ):

<Fichiers config.inc.php >
ordre autoriser , refuser
nier de tout
</ Files>

Mot de passe sur répertoire :

AuthName "Zone privée"
AuthType Basic
AuthUserFile / pub / home / login /. htpasswd
nécessite un utilisateur valide
</ Files>

La valeur AuthName sera affichée pour le visiteur et peut être utilisée pour clarifier la demande d'autorisation. La valeur AuthUserFile indique l'emplacement où le fichier de mots de passe est stocké pour accéder à ce répertoire. Ce fichier est créé par l'utilitaire spécial htpasswd.exe.

Par exemple, dans le répertoire que nous protégeons avec le mot de passe créé. htaccess avec le contenu suivant:

AuthName "Pour les utilisateurs enregistrés seulement"
AuthType Basic
AuthUserFile / pub / home / yoursite.ru/.htpasswd
nécessite un utilisateur valide
</ Files>

Dans cet exemple, lorsqu'un répertoire est demandé, le visiteur verra la phrase " Pour les utilisateurs enregistrés uniquement ", le fichier avec les mots de passe d'accès devrait se trouver dans le répertoire / pub / yoursite.ru / et appelé. htapasswd . Le répertoire est spécifié à partir de la racine du serveur. Si vous spécifiez de manière incorrecte un répertoire, Apache ne pourra pas lire le fichier. htpasswd et personne n’aura accès à ce répertoire.

Semblable à la protection d'un répertoire entier, vous pouvez définir un mot de passe pour un seul fichier. Par exemple, pour protéger le fichier, le fichier private.zip est nécessaire. htaccess fournit les informations suivantes:

<Fichiers private.zip >
AuthName "Zone Utilisateurs"
AuthType Basic
AuthUserFile / pub / home / login /. htpasswd
</ Files>

De même, en utilisant la commande < Files "\. ( Inc | sql | other extensions) $">, vous pouvez spécifier des mots de passe par masque de fichier. Par exemple, pour définir un mot de passe pour accéder à tous les fichiers portant l’extension. sql vous devez spécifier les informations suivantes:

<Fichiers "\ . ( Sql ) $">
AuthName "Zone Utilisateurs"
AuthType Basic
AuthUserFile / pub / home / yoursite.ru/.htpasswd
</ Files>

Afin de rediriger le visiteur sur le site http://www.site.ru, c. htaccess doit être spécifié:

Redirect / http://www.site.ru

A suivre ...