From fb382281d4350a7e2981962caf79fce8c492f646 Mon Sep 17 00:00:00 2001 From: Gregory Colpart Date: Thu, 6 Sep 2018 19:24:53 +0200 Subject: [PATCH] remise au propre des exemples de RW rules, et ajouter du cas d'un site en maintenance --- HowtoApache.md | 18 +++++++++++++++--- 1 file changed, 15 insertions(+), 3 deletions(-) diff --git a/HowtoApache.md b/HowtoApache.md index 1f80fe3a..0932c4bc 100644 --- a/HowtoApache.md +++ b/HowtoApache.md @@ -609,28 +609,40 @@ Note : pour utiliser *ldaps* avec un certificat non reconnu par le système, il Voici quelques motifs classiques de redirection vers un nouveau domaine (HTTP 302) … du plus simple au plus compliqué : ~~~ +# rediriger la page d'accueil avec un code 301 RedirectPermanent / http://new.example.com +# rediriger n'importe quelle requête en conservant le chemin RedirectMatch ^/(.*)$ http://new.example.com/$1 -# GET / --> /sub/ +# rediriger la page d'accueil vers un autre chemin RedirectMatch ^/$ /sub/ +# rediriger n'importe quelle requête en conservant le chemin avec des exceptions +RewriteCond %{REMOTE_ADDR} !^192\.0\.2\.129 RewriteRule ^/(.*) http://new.example.com/$1 [L,R=permanent] +# rediriger vers HTTPS sauf pour certaines requetes RewriteCond %{REQUEST_URI} !^/.well-known/pki-validation/ RewriteRule ^/(.*) https://%{SERVER_NAME}/$1 [L,R] -# le drapeau NC pour ne pas tenir compte de la casse +# le drapeau NC permet de ne pas tenir compte de la casse RewriteRule ^/FoO.tXt /sub/ [L,R,NC] # empêcher des requêtes POST sur une URL particulière RewriteCond %{REQUEST_METHOD} POST RewriteRule ^/foo.txt [L,F] -# Pour forcer le https +# rediriger vers HTTPS dans un VirtualHost mixte HTTP/HTTPS RewriteCond %{HTTPS} !=on RewriteRule ^/(.*) https://%{SERVER_NAME}/$1 [L,R=permanent] + +# mettre un site en maintenance (code 503) avec des exceptions +RewriteCond %{REMOTE_ADDR} !^192\.0\.2\.129 +RewriteRule ^.*$ /maintenance.html [R=503,L] +ErrorDocument 503 http://maintenance.evolix.org/ +Header Set Cache-Control "no-cache, no-store" +Header Set Pragma "no-cache" ~~~ Pour supprimer un Query String avec une Rewrite Rule :