Apache .htaccess, mettre son site hors-ligne pour maintenance PDF Imprimer Envoyer

Vous êtes webmaster ? Ou peut être avez-vous tout simplement votre site perso comme beaucoup de monde… Régulièrement, vous avez besoin de modifier certaines pages, une partie d'un site, voir même le site complet… ou tout simplement souhaitez vous tester votre site avant de la rendre accessible a tous les utilisateurs, dans ce cas, il vous faut bloquer l'accès à tout le monde, sauf a vous. Cette astuce vous expliquera comment empêcher les visiteurs d'accéder a votre site quelque soit la page appelée, et de les rediriger vers la page de votre choix indiquant que le site en est maintenance par exemple… Seul vous pourrez accéder à votre site.
 


 

La méthode la plus utilisée est sans doute la plus simple, mais certainement pas la plus, heu, "propre" (¿) est donc de modifier le fichier index.extension ou default.extension bon le nom de fichier que vous avez configurer pour votre serveur quoi…
Avec un message du style : "Site en maintenance, we are sorry !"

C'est très bien si le visiteur arrive directement sur cette page en tapant l'adresse du site, mais imaginer le kemé qui a une adresse dans ces favoris, ou tout simplement un lien d'un autre site ou, heu je ne c'est comment il arrive sur le site mais pas directement (on se comprend là hein)

 

Bon et ben la bonne méthode consiste donc a rediriger tous les visiteurs arrivant de n'importe où sur n'importe quelle page vers une page spécifique où nous expliquons que le site est en maintenance…
Le top est aussi, au webmaster de pouvoir tester le site avant qu'il ne le ré-ouvre aux visiteurs, donc, nous devons permettre au webmaster de pouvoir accéder au site :)

La méthode est simple, nous utilisons un fichier .htaccess (Serveurs Apache)

Voila le code (fichier .htaccess)

 

Ne parlons pas dans le vide, pour ceux qui ne connaissent pas, voila un bref apreçus de quoi est capable les fichiers htaccess. (Les fichiers htaccess sont capable de beaucoup plus)

 

Infos htaccess
Les fichiers .htaccess sont des fichiers de configuration d'Apache, permettant de définir des règles dans un répertoire et dans tous ses sous répertoires (qui n'ont pas de tel fichier à l'intérieur). On peut les utiliser pour protéger un répertoire par mot de passe, ou pour changer le nom ou l'extension de la page index, ou encore pour interdire l'accès au répertoire.
Interet des fichiers htaccess

Les fichiers .htaccess peuvent être utilisés dans n'importe quel répertoire virtuel ou sous répertoire.

Les principales raisons d'utilisation des fichiers .htaccess sont :

  • Gérer l'accès à certains fichiers.
  • Ajouter un mime-type.
  • Protéger l'accès à un répertoire par un mot de passe.
  • Protéger l'accès à un fichier par un mot de passe.
  • Définir des pages d'erreurs personnalisées.
Principe des fichiers htaccess

Le fichier .htaccess est placé dans le répertoire dans lequel il doit agir. Il agit ainsi sur les permissions du répertoire qui le contient et de tous ses sous-répertoires. Vous pouvez placer un autre fichier .htaccess dans un sous-répertoire d'un répertoire déjà contrôlé par un fichier .htaccess.
Le fichier .htaccess du répertoire parent reste en "activité" tant que les fonctionnalités n'ont pas été réécrites.

Les fonctionnalités de ces fichiers étant très puissantes, lisez bien ce tutorial avant de vous lancer dans la création des vôtres.

 

Sous Windows, il est logiquement impossible de créer un fichier .htaccess, puisque Windows ne vous autorisera pas à sauvegarder le fichier tel quel. Voici la démarche à suivre :

  1. Créer un fichier texte "fichier.htaccess"
  2. Renommer le fichier en supprimant "fichier"

Remarque : Selon votre éditeur, vous pouvez également sauvegarder le fichier directement en .htaccess. Sous notepad, il suffit de mettre des guillemets autour du nom de fichier tandis que UltraEdit gère le nom lui-même.

 

Fichier .htaccess
######### MAINTENANCE #########

ErrorDocument 403 /main.htm
allow from 81.167.114.127
deny from all

<Files main.htm>
allow from all
</Files>

######### /MAINTENANCE #########

 

Expliquations
######### MAINTENANCE #########

ErrorDocument 403 /main.htm // Ici, le fichier utiliser en cas d'erreur 403
deny from all // Acces refuser pour tout le monde
allow from 81.167.114.127 // On definit ensuite l'adresse ip ou nom de domaine du webmaster(...)

<Files main.htm>
allow from all // Et ici on autorise l'acces au fichier expliquant le pk du comment à tout le monde
</Files>

######### /MAINTENANCE #########

/*

Alors que ce passe t'il ?

L'utilisateur/visiteur arrive sur le site (sur n'importe quelle page, disons x.htm), il est automatiquement redirigé vers "main.htm" puisqu'il n'a pas le droit d'acceder à "x.htm".

Par contre, "81.167.114.127" (le webmaster) accede librement au site afin de pouvoir le tester avant d'attribuer les droits pour tout le monde.

*/

  • Il est tout a fait possible d'autoriser plusieurs IP/noms de domaines
  • Le fichier n'est pas obligatoirement nommé "main.htm"

 

Infos supplementaires
  • http://phpfun.free.fr/index.php3?page=securite.htm
  • http://www.selfhtml.com.fr/articles/serveur/htaccess/
  • http://www.commentcamarche.net/apache/apacht.php3
Mise à jour le Mardi, 10 Février 2009 00:55
 
Pouliguen Informatique et Multimédia

En direct du forum



PiM - Pouliguen Informatique et Multimédia, le club info' du Pouliguen ~

 

« La plupart des gens doués ont appris à l’être. »
Frédéric DARD

     
    
Accueil Aide informatique Astuces diverses Sécurité Apache .htaccess, mettre son site hors-ligne pour maintenance

Publicité