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

Le fichier pour définir l'accès au serveur .htaccess.

Construction du site

Fichier pour définir l'accès au serveur. htaccess

Auteur: Maxim Prikhodko
Publié le 30 novembre 2005

Comme parmi les systèmes serveurs, le système d'exploitation le plus populaire est Unix, alors le serveur le plus courant n'est pas MS IIS , mais Apache (dont la version existe cependant 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 contrôler le fonctionnement du serveur par rapport au site Web en manipulant le fichier de configuration. htaccess , tout changement qui prend immédiatement effet.

Syntaxe htaccess a une structure rigide, une non-conformité qui conduit à 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.mysite.ru / htdocs / config /. htpasswords

  2. Les domaines sont indiqués avec un protocole. Par exemple: Redirect / http://www.site.ru

Le fichier devrait être appelé "point" htaccess et être écrit au format UNIX. Dans FAR, par exemple, lors de l'édition, vous pouvez appuyer sur Shift + F2 et sélectionner l'élément de menu "Save as UNIX-text".

Voici des exemples simples de gestion de l'accès à un site à l'aide d'un fichier. htaccess :

Empêcher tous les fichiers:

nier de tous

Ici, tout indique "tout".

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

ordre permettre refuser
nier de tous
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 permettre refuser
permettre à tous
refuser à partir de 192.13.237.14

Bloquer un groupe de fichiers par masque:

<Files "\ . ( Inc | sql | autres expansion ) "">
ordre autoriser, refuser
nier de tous
</ Files>

Dans cet exemple, le serveur Web Apache lui-même peut accéder aux fichiers avec 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 tous
</ Files>

Password sur le répertoire :

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

La valeur AuthName sera affichée pour le visiteur et peut être utilisée pour expliquer la demande d'autorisation. La valeur AuthUserFile indique l'emplacement où le fichier de mot 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 en créant un mot de passe. htaccess avec le contenu suivant:

AuthName "Pour les utilisateurs enregistrés uniquement"
AuthType Basic
AuthUserFile / pub / home / votresite.ru/.htpasswd
exiger un utilisateur valide
</ Files>

Dans cet exemple, lorsqu'un utilisateur demande un répertoire, le visiteur verra l'expression " Pour les utilisateurs enregistrés seulement ", le fichier de mot de passe doit se trouver dans le répertoire / pub / votreservice.ru / et être appelé. htapasswd . Le répertoire est spécifié à partir de la racine du serveur. Si vous spécifiez un répertoire de manière incorrecte, Apache ne pourra pas lire le fichier. htpasswd et personne n'aura accès à ce répertoire.

De même que pour protéger un répertoire entier, vous pouvez définir un mot de passe pour un seul fichier. Par exemple, pour protéger le fichier private.zip , il est nécessaire dans le fichier. htaccess spécifie les informations suivantes:

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

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

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

Afin de rediriger le visiteur sur le site http://www.site.ru, c. htaccess vous devez spécifier:

Rediriger / http://www.site.ru

A suivre ...