Comment forcer l'URL et les alias à apparaître sous une seule forme

De Vulgum Techus
Aller à : Navigation, rechercher
Lien court vers cette page : https://vt.cx/CfUaasf
QR code vers cette page : https://vt.cx/CfUaasf.qr

Présentation

Il est courant qu'un site Internet ait plusieurs alias et soit opérationnel avec ou sans WWW dans son URL. Pour obtenir que quelque soit l'alias ou la forme de l'URL affiche systématiquement la forme souhaitée d'URL, il faut passer par le mod_rewrite comme expliqué ci-après.

Procédure

Exemple : les URL suivants pointant vers le même site www.mondomaine.com

  • mondomaine.com
  • www.mondomaine.com
  • mondomaine.net
  • www.mondomaine.net
  • mon-domaine.com
  • www.mon-domaine.com
  • mon-domaine.net
  • www.mon-domaine.net

Pour s'assurer que quelle que soit l'URL saisi, l'affichage soit toujours www.mondomaine.com il convient de paramétrer soit .htaccess (à la racine du site) soit le virtual host avec les instructions suivantes :

 rewritecond %{http_host} ^mondomaine.com [nc]
 rewriterule ^(.*)$ http://www.mondomaine.com/$1 [r=301,nc]
 rewritecond %{http_host} ^mon-domaine.com [nc]
 rewriterule ^(.*)$ http://www.mondomaine.com/$1 [r=301,nc]
 rewritecond %{http_host} ^www.mon-domaine.com [nc]
 rewriterule ^(.*)$ http://www.mondomaine.com/$1 [r=301,nc]
 rewritecond %{http_host} ^mondomaine.net [nc]
 rewriterule ^(.*)$ http://www.mondomaine.com/$1 [r=301,nc]
 rewritecond %{http_host} ^mon-domaine.net [nc]
 rewriterule ^(.*)$ http://www.mondomaine.com/$1 [r=301,nc]
 rewritecond %{http_host} ^www.mondomaine.net [nc]
 rewriterule ^(.*)$ http://www.mondomaine.com/$1 [r=301,nc]
 rewritecond %{http_host} ^www.mon-domaine.net [nc]
 rewriterule ^(.*)$ http://www.mondomaine.com/$1 [r=301,nc]

Ainsi dans tous les cas, l'URL affichée, et donc vue par les usagers, sera www.mondomaine.com. On peut tester cette fonctionnalité avec Vulgum Techus en tapant vulgumtechus.com, vulgum-techus.com et www.vulgumtechus.com

A Noter : qu'il est impératif que le paramètre MOD_REWRITE du fichier php.ini soit MOD_REWRITE=TRUE pour que la réécriture d'URL fonctionne.

Commentaires

blog comments powered by Disqus