Jonathan Vinial bio photo

Jonathan Vinial

Administrateur Linux dans le domaine du web, passionné d'Open Source et de photographie.

Email Curriculum Vitae Twitter Facebook Google+

Nous allons voir comment mettre en place une page de maintenance basée sur un user-agent. Cette solution est idéale pour tester vos pages de maintenance sans perturber la production.

Paramétrage du vhost

Partons du principe que votre page de maintenance existe déjà et se situe dans le répertoire /maintenance à la racine de votre site.
On édite ensuite le vhost :

RewriteEngine On
RewriteCond %{HTTP_USER_AGENT} !^monuseragent
RewriteCond %{REQUEST_URI} !^/maintenance.*
RewriteRule (.*) /maintenance/maintenance.html [R=302,L]

Pour tous les users agent différents de “monuseragent” et pour toute URI différente de /maintenance.*, on redirige vers /maintenance/maintenance.html

Reload de apache
root@local# apachectl graceful

Il ne vous reste plus qu’à tester. Pour ma part, j’utilise “User-Agent Switcher for Chrome”.

Cette solution est adaptable et peut aussi permettre de renvoyer certains type de user-agent dans les étoiles ou sur des pages particulières.