À partir de ce guide, vous pourrez en apprendre davantage sur les fichiers .htaccess et leurs fonctions, et les utiliser pour optimiser votre site Web. Bien que .htaccess ne soit qu'un fichier, il peut modifier les paramètres du serveur, vous permettant de faire de nombreuses choses différentes, la fonctionnalité la plus populaire est que vous pouvez créer une page personnalisée « Erreur 404 ». .htaccess n’est pas difficile à utiliser. En fin de compte, il s’agit simplement d’ajouter quelques instructions simples à un document texte.
Vous devez d’abord déterminer si l’hôte le prend en charge
Il peut être difficile de répondre par une réponse simple. De nombreux hôtes prennent en charge .htaccess mais ne le précisent pas spécifiquement, et de nombreux autres types d'hôtes en sont capables mais ne permettent pas à leurs utilisateurs d'utiliser .htaccess. De manière générale, si votre hébergeur utilise un système Unix ou Linux, ou toute version du serveur Web Apache, .htaccess est théoriquement pris en charge, même si votre hébergeur ne vous autorise pas à l'utiliser.
Un bon signe pour savoir si votre hébergeur autorise .htaccess est s'il prend en charge la protection par mot de passe du dossier. Pour réaliser cette fonction, l'hébergeur doit utiliser .htaccess (bien sûr, dans quelques cas, bien qu'ils offrent une protection par mot de passe, ils ne vous permettent pas d'utiliser .htaccess). Si vous n'êtes pas sûr que votre hébergeur prenne en charge .htaccess, le meilleur moyen est de télécharger votre propre fichier .htaccess pour voir s'il fonctionne, ou d'envoyer directement un e-mail à votre fournisseur de services d'hébergement pour consultation.
Le fichier .htaccess (ou "fichier de configuration distribué") du système Apache fournit une méthode pour modifier la configuration d'un répertoire, c'est-à-dire placer un fichier contenant une ou plusieurs directives dans un répertoire de documents spécifique pour agir sur ce répertoire et All ses sous-répertoires. En tant qu'utilisateur, 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.
.htaccess peut faire une tonne de choses, notamment : la protection par mot de passe des dossiers, la redirection automatique des utilisateurs, les pages d'erreur personnalisées, la modification de vos extensions de fichiers, l'interdiction des utilisateurs d'adresses IP spécifiques, l'autorisation uniquement des utilisateurs d'adresses IP spécifiques, les listes de répertoires interdites et l'utilisation d'autres fichiers comme fichiers d'index.
La création de fichiers .htaccess peut vous poser quelques difficultés. L'écriture de fichiers est simple, il vous suffit d'écrire le code approprié dans un éditeur de texte (tel que WordPad). La vraie difficulté peut être de sauvegarder le fichier, car .htaccess a un nom de fichier étrange (il n'a pas réellement de nom de fichier, juste une extension de 8 lettres) et n'est pas acceptable dans certains systèmes (comme Windows 3.1). Sur la plupart des systèmes d'exploitation, il suffit de sauvegarder le document sous : ".htaccess" (y compris les guillemets). Si cela ne fonctionne pas, vous devez lui donner un autre nom (par exemple, htaccess.txt), le télécharger sur le serveur, puis utiliser un logiciel FTP pour le renommer directement.
avertir
Avant d'utiliser .htaccess, je dois vous donner quelques avertissements. Bien qu'il soit absolument peu probable que l'utilisation de .htaccess sur un serveur vous cause des problèmes (cela ne fonctionne tout simplement pas si quelque chose ne va pas), vous devez être particulièrement prudent si vous utilisez les extensions Microsoft FrontPage. Étant donné que les extensions FrontPage elles-mêmes utilisent .htaccess, vous ne pouvez pas le modifier ni ajouter vos propres informations. Si vous en avez vraiment besoin (non recommandé, mais possible), vous devez d'abord télécharger le fichier .htaccess depuis le serveur (s'il existe), puis ajouter votre code devant celui-ci.
2|Configuration du fichier .httacces
La première utilisation de .htaccess que je vais aborder concerne les pages d'erreur personnalisées. Cela vous permettra d'avoir votre propre page d'erreur personnalisée (par exemple lorsqu'un fichier est introuvable) plutôt que la page d'erreur fournie par votre fournisseur de services. Ou il n'y a pas de pages. Cela donnera à votre site Web un aspect plus professionnel en cas de problème. Vous pouvez également utiliser un script pour vous avertir lorsqu'une erreur se produit (par exemple, j'utilise le script PHP de Free Webmaster Help pour m'envoyer automatiquement un e-mail lorsqu'une page est introuvable).
Tout code d'erreur de page que vous connaissez (comme 404 Page Not Found) peut être transformé en une page personnalisée en ajoutant le texte suivant au fichier .htaccess :
Numéro d'erreur du document d'erreur /fichier.html
Par exemple, si j'ai un fichier nofound.html dans mon répertoire racine, je souhaite l'utiliser comme page d'erreur 404 :
Document d'erreur 404 /notfound.html
Si le fichier ne se trouve pas dans le répertoire racine du site Web, il vous suffit de définir le chemin sur :
Document d'erreur 500 /pagesd'erreur/500.html
Voici quelques-unes des erreurs les plus courantes :
Codes de retour d'erreur de demande client courants :
400 - Mauvaise demande Mauvaise demande
401 Autorisation requise nécessite une vérification
403 Interdit
404 Page introuvable Page 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 Erreur de serveur interne
Ensuite, tout ce que vous avez à faire est de créer un fichier qui s'affiche lorsque des erreurs se produisent, puis de le télécharger avec .htaccess.
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 :
ErrorDocument 401 "Vous n'êtes pas autorisé à accéder à cette page, veuillez abandonner !"
Parfois, pour une raison quelconque, il n'y a pas de fichier d'index dans votre répertoire, ce qui signifie que lorsque quelqu'un tape le chemin d'accès au répertoire dans la barre d'adresse du navigateur, tous les fichiers du répertoire seront affichés, ce qui laissera une marque sur votre site Web. . Réduire les risques pour la sécurité.
Pour éviter cela (sans avoir à créer un tas de nouveaux fichiers d'index), vous pouvez empêcher l'affichage de la liste des répertoires en tapant la commande suivante dans votre document .htaccess : Options-Index
Dans certains cas, vous souhaiterez peut-être uniquement autoriser les utilisateurs disposant de certaines adresses IP à accéder à votre site Web (par exemple, autoriser uniquement les utilisateurs disposant d'un FAI spécifique à accéder à un répertoire), ou vous souhaiterez peut-être bloquer certaines adresses IP (par exemple, en utilisant Low -les utilisateurs de niveau sont exclus de votre forum). Bien sûr, cela ne fonctionne que si vous connaissez l'adresse IP que vous souhaitez bloquer, mais la plupart des utilisateurs en ligne utilisent aujourd'hui des adresses IP dynamiques, ce n'est donc pas une manière courante de limiter l'utilisation.
Vous pouvez bannir une adresse IP à l'aide de la commande suivante :
refuser à partir de 000.000.000.000
000.000.000.000 voici l'adresse IP bloquée. Si vous n'en spécifiez que quelques-unes, vous pouvez bloquer l'intégralité du segment de réseau. Si vous saisissez 210.10.56., toutes les adresses IP de 210.10.56.0 à 210.10.56.255 seront bloquées.
Vous pouvez autoriser une adresse IP à accéder au site Web à l'aide de la commande suivante :
permettre à partir de 000.000.000.000
L'adresse IP autorisée est 000.000.000.000. Vous pouvez bloquer l'intégralité du segment de réseau tout comme vous bloquez l'adresse IP.
Si vous souhaitez empêcher tout le monde d'accéder au répertoire, vous pouvez utiliser :
nier de tous
Cependant, cela n'affecte pas l'utilisation par le script des documents de ce 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 w3sky.PHP dans w3sky. 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
Peut-être que vous ne souhaitez pas continuer à utiliser index.htm ou index.html comme fichier d'index du répertoire. Par exemple, si votre site utilise des fichiers PHP, vous souhaiterez peut-être utiliser index.PHP comme document d'index du répertoire. Bien sûr, vous n'êtes pas obligé de vous limiter au document « index ». Si vous le souhaitez, en utilisant .htaccess, vous pouvez même définir foofoo.balh comme document d'index !
Ces fichiers d'index qui se remplacent mutuellement peuvent être organisés dans une liste, et le serveur recherchera de gauche à droite pour vérifier quel document existe dans le répertoire réel. Si aucun n'est trouvé, il affichera la liste des répertoires (sauf si vous avez désactivé l'affichage des listes de fichiers du répertoire).
DirectoryIndex index.PHP index.PHP3 messagebrd.pl index.html index.htm
L'une des fonctionnalités les plus utiles de .htaccess est de rediriger les requêtes vers différents documents au sein ou en dehors du même site. Ceci est extrêmement utile lorsque vous modifiez le nom d'un fichier mais que vous souhaitez toujours que les utilisateurs y accèdent en utilisant l'ancienne adresse. Une autre application (que je trouve utile) redirige vers une URL longue, par exemple dans ma newsletter je peux utiliser une URL très courte pour pointer vers mon lien d'affiliation. Voici un exemple de fichier de redirection :
Redirection /location/from/root/file.ext
http://www.w3sky.com/new/file/123.html
Dans l'exemple ci-dessus, pour accéder au fichier nommé oldfile.html dans le répertoire racine, tapez :
/ancienfichier.html
Pour accéder aux fichiers d'un ancien sous-répertoire, tapez :
/ancien/ancienfichier.html
Vous pouvez également utiliser .htaccess pour rediriger des répertoires entiers de sites Web. Si vous avez un répertoire nommé olddirectory sur votre site Web, et que vous avez créé le même document que ci-dessus sur un nouveau site Web http://www.w3sky.com/newdirectory/ , vous pouvez copier tous les fichiers de l'ancien répertoire. Effectuer une redirection sans avoir à les déclarer un à un :
Redirection /olddirectory http://www.w3sky.com/newdirectory
De cette manière, toutes les requêtes dirigées vers le répertoire /olddirectory du site seront redirigées vers le nouveau site, y compris les informations URL supplémentaires ajoutées. Par exemple, quelqu'un tape :
Les demandes seront redirigées vers :
Cette fonctionnalité est extrêmement puissante si elle est utilisée correctement.
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
Bien qu'il existe diverses utilisations du .htaccess, la plus populaire, et probablement la plus utile, est de loin son utilisation pour une protection fiable par mot de passe des répertoires de sites Web. Bien que JavaScript et d'autres puissent également le faire, seul .htaccess offre une sécurité parfaite (c'est-à-dire que les visiteurs doivent connaître le mot de passe avant de pouvoir accéder au répertoire, et il n'y a pas de « porte dérobée »).
L'utilisation de .htaccess pour protéger par mot de passe un répertoire est un processus en deux étapes. La première étape consiste à ajouter les lignes de code appropriées à votre document .htaccess, puis à placer le document .htaccess dans le répertoire que vous souhaitez protéger :
AuthName « Nom de la section »
Type d'authentification de base
AuthUserFile /full/path/to/.htpasswd
Exiger un utilisateur valide
Vous devrez peut-être modifier certaines parties du contenu ci-dessus en fonction de votre site Web, par exemple en remplaçant « Nom de la section » par le nom de la section protégée « Espace membres ».
/full/parth/to/.htpasswd doit être remplacé par le chemin complet du serveur pointant vers le fichier .htpasswd (plus d'informations sur ce document plus tard). Si vous ne connaissez pas le chemin complet d'accès à votre espace Web, veuillez demander à votre administrateur système.
La protection par mot de passe des répertoires est plus gênante que les autres fonctionnalités de .htaccess, car vous devez également créer un document contenant un nom d'utilisateur et un mot de passe pour accéder à votre site Web, et les informations pertinentes (par défaut) se trouvent dans un document appelé .htpasswd. Comme .htaccess, .htpasswd est un document sans nom de fichier et avec une extension de 8 bits qui peut être placé n'importe où sur votre site Web (le mot de passe doit être crypté à ce moment-là), mais il est recommandé de l'enregistrer en dehors de la racine Web. répertoire de votre site Web , afin qu'il ne soit pas accessible via le réseau. 1516501417
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 les instructions suivantes : 1516501417
commande autoriser, refuser
nier de tous
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 :
forger:y4E7Ec8e7EwV
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.
Après avoir créé le document .htpasswd (qui peut être créé avec un éditeur de texte), l'étape suivante consiste à saisir le nom d'utilisateur et le mot de passe utilisés pour accéder au site Web, qui doivent être :
nom d'utilisateur: mot de passe
La position de « mot de passe » doit être le mot de passe crypté. Vous pouvez obtenir des mots de passe cryptés de plusieurs manières : la première consiste à utiliser un script personnalisé disponible en ligne ou à en écrire un vous-même ; un autre bon service de cryptage de nom d'utilisateur/mot de passe consiste à utiliser le site Web KxS, qui vous permet de saisir votre nom d'utilisateur et votre mot de passe, puis de les générer. un mot de passe correctement formaté.
Pour plusieurs utilisateurs, il vous suffit d'ajouter une nouvelle ligne avec le même format dans le document .htpasswd. De plus, il existe des programmes de script gratuits qui peuvent facilement gérer les fichiers .htpasswd et ajouter/supprimer automatiquement des utilisateurs, etc.
Lorsque vous essayez d'accéder à un répertoire protégé par un mot de passe .htaccess, votre navigateur affichera la boîte de dialogue standard nom d'utilisateur/mot de passe. Si vous n'aimez pas cette méthode, certains scripts vous permettent d'intégrer des zones de saisie du nom d'utilisateur/mot de passe dans la page pour l'authentification. Vous pouvez également saisir le nom d'utilisateur et le mot de passe (non chiffrés) dans la zone URL du navigateur de la manière suivante :
http://nom d'utilisateur:mot de passe@ www.w3sky.com/directory/
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 %{ HTTP_REFERER } !^$
RewriteCond %{ HTTP_REFERER } !^http://(www.)?w3sky.com/.*$ [NC]
RewriteRule .(gif &line;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 %{ HTTP_REFERER } !^$
RewriteCond %{ HTTP_REFERER } !^http://(www.)?w3sky.com/.*$ [NC]
RewriteRule .(gif &line;jpg)$ http://www.w3sky.com/Nom du fichier image de remplacement [R,L]
Cette méthode consiste à rediriger tout le trafic de votredomaine.com vers www.votredomaine.com (ou vice versa). En fait, certaines personnes à l’étranger pensent que cette méthode n’est pas utile au PageRank. Je pense que c'est parce qu'ils ont vu qu'il existe un outil de domaine préféré dans les outils d'administration de Google, qui peut spécifier aux robots d'exploration de Google d'utiliser www.votredomaine.com ou votredomaine.com comme domaine préféré pour l'exploration et le classement, et la redirection semble inutile. Mais de nombreuses personnes ont en effet confirmé que cela est efficace. Quoi qu’il en soit, personne n’a dit que cette méthode nuirait au référencement ou au pagerank.
Écrivez en .htaccess :
Options + FollowSymlinks All -Index
réécrire le moteur activé
réécrireBase/
RéécritureCond %{HTTP_HOST} ^domain.com$
RewriteRule ^(.*)$ http://www.domain.com/ $1 [R=301,L]
Suppression forcée de 3w
Ce qui suit prend WordPress comme exemple. Dans d'autres situations, vous pouvez vous y référer et le résoudre vous-même. Il y a généralement un fichier .htaccess dans votre répertoire WordPress. Sinon, créez-en un manuellement. Si vous configurez un lien permanent, le contenu du .htaccess sera le suivant :
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
Ne nous inquiétons pas de ce que cela signifie spécifiquement, ajoutez simplement en dessous la ligne RewriteBase / :
RewriteCond %{HTTP_HOST} ^ www.yourdomain.tld $ [NC]
RewriteRule ^(.*)$ http://yourdomain.tld/ $1 [R=301,L]
Et c'est fini. Bien sûr, remplacez votredomaine.tld par votre propre nom de domaine. Les deux lignes ci-dessus visent à réécrire le formulaire www.votredomaine.tld en votredomaine.tld, et à rediriger définitivement tous les liens accédant au premier vers le second.
Il est obligatoire d'ajouter www avant le nom de domaine
Si vous insistez vraiment pour ajouter www devant, mes mots ci-dessus seront vains et j'exprime mes regrets. Mais vous pouvez. Remplacez simplement les deux lignes de code ajoutées ci-dessus par ceci :
RewriteCond %{HTTP_HOST} ^yourdomain.tld$ [NC]
RewriteRule ^(.*)$ http://www.yourdomain.tld/ $1 [R=301,L]
.htaccess est un outil puissant que les administrateurs de sites peuvent utiliser. Il propose davantage de variantes pour répondre à différents objectifs, permettant ainsi de gagner du temps et d'améliorer la sécurité du site Web.
Instructions spéciales pour .htaccess
* Pour activer .htaccess, vous devez modifier httpd.conf, activer AllowOverride et utiliser AllowOverride pour restreindre l'utilisation de commandes spécifiques.
* Si vous devez utiliser un nom de fichier autre que .htaccess, vous pouvez utiliser la directive AccessFileName pour le modifier. Par exemple, si vous devez utiliser .config, vous pouvez le configurer dans le fichier de configuration du serveur comme suit :
NomFichierAccès.config
* En général, les fichiers .htaccess ne doivent pas être utilisés sauf si vous n'avez pas accès au fichier de configuration principal. Il existe un malentendu très courant selon lequel l'authentification des utilisateurs ne peut être obtenue que via des fichiers .htaccess. En fait, ce n'est pas le cas et constitue une bonne méthode pour écrire l'authentification des utilisateurs dans le fichier de configuration principal. Les fichiers .htaccess doivent être utilisés dans les situations où le fournisseur de contenu doit modifier la configuration du serveur pour un répertoire spécifique sans privilèges root. Si l'administrateur du serveur ne souhaite pas modifier fréquemment la configuration, il peut autoriser les utilisateurs à modifier eux-mêmes la configuration via le fichier .htaccess, en particulier si le FAI gère plusieurs sites utilisateur sur la même machine et espère que les utilisateurs pourront modifier eux-mêmes la configuration. . Néanmoins, vous devez généralement éviter d’utiliser les fichiers .htaccess autant que possible. Toute configuration que vous souhaitez placer dans le fichier .htaccess peut être placée dans la section <Directory> du fichier de configuration principal et est plus efficace. Il y a deux raisons principales d'éviter d'utiliser les fichiers .htaccess, à savoir les performances et la sécurité.
Ci-joint : connexion à l'outil .htaccess
Générateur de fichiers .htaccess en ligne
http://cooletips.de/htaccess/
Capable de générer des fichiers .htaccess en ligne, il est très simple de configurer la redirection, les fichiers d'erreurs système, etc.
Éditeur .htaccess éditeur en ligne
Encodage par défaut personnalisable, pages d'erreur, etc.