#####################################
# DICO #
#####################################
RewriteRule ^foo.html$ test.html [L]
→ si page se termine par [ foo.html ] alors afficher [ test.html ]
[L] → Signifie "Last"
$ → Indique la fin de l'URL à réécrire. Ce caractère est facultatif mais il est plus rigoureux de l'utiliser.
? → Caractère obligatoire précédant la série de variables passées dans l'URL réécrite.
=$1 → Variable nommée qui prendra la valeur située dans la première paire de parenthèses.
& → Caractère utilisé pour séparer 2 variables dans l'URL réécrite.
([0-9]{1,2}) Autorise un ou deux chiffres
([0-9]*) Autorise tous les chiffres, autant de fois qu'on veut
(-[a-z]*) Autorise toutes les lettres et tirets, autant de fois qu'on veut
[NC] → No case. Insensible à la casse
[OR] → Condition, veut dire "ou"
! → pas (comme en php) - signifie NOT et évite de répéter une chaine s'il rencontre la chaine 2 fois
F|forbidden RewriteRule "\.exe" "-" [F] → interdire la téléchargement de fichiers .exe
#####################################
# QSA #
#####################################
Exemple :
^(\w+)-(\w+).html$ index.php?controller=$1&action=$2
→ ex1 : la page : user-login.html redirigera vers index.php?controller=user&action=login
→ ex2 :
Sans QSA : user-login.html?test=truc redirigera vers index.php?controller=user&action=login
Avec QSA : user-login.html?test=truc redirigera vers index.php?controller=user&action=login&test=truc
#####################################
# ALLOW / DENY #
#####################################
# BEGIN Donny
Order Deny,Allow
Deny from all
Allow from 195.101.177.200
Allow from 127.0.0.1
Allow from ::1
Allow from localhost
# BEGIN Donny
Bloque le fichier xmlrpc.php mais permet l'accès à l'IP 195.101.177.200
::1 is the IPV6 equivalent of 127.0.0.1
#####################################
# REDIRECTION IPAD #
#####################################
RewriteCond %{HTTP_USER_AGENT} ^.*iPad.*$
RewriteRule ^(.*)$ http://ipad.yourdomain.com [R=301]
#####################################
# SE MÉFIER DE L'ENCODAGE !!! #
# DOS/WINDOWS ANSI #
#####################################
ForceType text/html
AddType text/html .html .htm .aspx
AddEncoding text/aspx html
RedirectPermanent /modulref3.php http://creer-un-site.fr/referencement-gratuit.php
RedirectPermanent /statnedstat.php statistique-gratuite.php
#####################################
# REDIRECT PERMANENT #
#####################################
Voici le code insèré dans mon .hatccess :
RedirectPermanent /modulref3.php http://creer-un-site.fr/referencement-gratuit.php
RedirectPermanent /statnedstat.php statistique-gratuite.php
Redirect permanent /dossier01/page01.html http://nouvelle.adresse.fr/dossier03/page02.html
RedirectMatch permanent /dossier01/(.*)\.html$ http://nouvelle.adresse.fr/dossier02/$1.php
Redirect permanent /dossier01 http://nouvelle.adresse.fr/dossier02
Redirect permanent / http://nouvelle.adresse.fr/
#Pour déplacer une page :
RedirectPermanent ancien.html http://www.domaine.tld/nouveau.html
→ Cette directive signale au navigateur que la page ancien.html a été renommée nouveau.html et renvoie l’entête correcte au navigateur pour signaler ce fait (entête 301 "déplacement permanent"). L’avantage de cette approche est que les robots d’indexation des différents moteurs apprendront que cette page a été déplacée et modifieront leur index pour refléter la nouvelle adresse. Dans le cas de Google, le PageRank [4] de l’ancienne page sera automatiquement transmis à la nouvelle page.
#Pour déplacer un répertoire :
RedirectPermanent /ancien http://www.domaine.tld/nouveau/
→ Il est important de noter que dans le cas d’utilisation de la directive RedirectPermanent, la nouvelle adresse de page ou de répertoire doit être une URL complète.
#Pour changer de nom de domaine :
→ RedirectPermanent / http://www.nouveaudomaine.tld/
#Renommer extension :
Redirect seeother /dossier1/document4.doc http://adresse.actuelle.fr/dossier1/document4.pdf
Redirect seeother /newsletter-linfo-du-createur-dentreprise/newsletter-juillet-2011/test.aspx http://www.alliancecentre.cerfrance.fr/newsletter-linfo-du-createur-dentreprise/newsletter-juillet-2011/test.php
#####################################
# Quelques favoris #
# À lire #
#####################################
http://sebl69.free.fr/astuces/pagesweb/index.php?page=creation-htaccess
https://httpd.apache.org/docs/current/fr/rewrite/flags.html
https://httpd.apache.org/docs/2.4/fr/rewrite/flags.html
https://mediatemple.net/community/products/dv/204643270/using-htaccess-rewrite-rules