Rediriger son site en cas de changement grâce aux redirections HTTP

Statut
N'est pas ouverte pour d'autres réponses.

Snake's

Administrateur
Ancien staff
Inscription
5 Juin 2012
Messages
8 792
Réactions
6 916
Points
29 965
RGCoins
25
Bonjour à tous, :membre:

Je vous retrouve aujourd'hui pour vous expliquer comment rediriger votre site en cas de déménagement d'URL .


You must be registered for see images attach



Qu'est-ce qu'une redirection ?


Une redirection est un moyen de transférer le visiteur de manière automatique vers une autre page. Il existe différents types de redirection sous plusieurs technologies :

  • La redirection HTTP ;
  • La redirection HTML ;
  • La redirection PHP ;
  • La redirection Javascript.
Evidemment, il y en a des meilleurs que d'autres.
Dans ce tutoriel, je vais choisir la redirection HTTP , car j'avais déjà abordé le .htaccess dans mon ancien sujet, et puis c'est une très bonne méthode de redirection. ;)

Donc pour la redirection HTTP, tout se passe dans le fichier .htaccess , donc elle fonctionne avec Apache .



You must be registered for see images attach



Comment fonctionne les redirections HTTP ?


Je vous rappelle que chaque ligne d'un fichier .htaccess est une instruction , celle-ci est exécutée par Apache .
Pour cette introduction, nous allons commencer en douceur, avec l'instruction RedirectMatch.

Voici un exemple d'utilisation de cette instruction :
Code:
RedirectMatch seeother ^/php/(.*)\.php$ https://test.reality-gaming.fr/php/$1.php


Une explication s'impose, n'est-ce pas ? :p
  • RedirectMatch : C'est l'instruction de redirection, ça dit ce que l'on va faire ;
  • seeother : C'est une option de l'instruction RedirectMatch ;
  • ^/php/(.*)\.php$ : La cible de l'instruction de redirection ;
  • test.reality-gaming.fr/php/$1.php : L'adresse finale où l'on redirige notre visiteur.
Nous allons voir les redirections permanentes désormais.

En changeant d'URL, vous savez les risques qu'impose un tel changement, le non suivi des visiteurs, une baisse d'activité, votre site pourrait ne plus être référencé, etc.
Mais tous ces problèmes peuvent être corrigés simplement, grâce aux redirections !

Pour ce faire, nous allons utiliser l'instruction Redirect permanent.
Voici un exemple d'utilisation de cette instruction :
Code:
Redirect permanent / http://nouveau-site.fr


Je vais vous expliquer ce code :
  • Redirect permanent : Instruction qui spécifie quel type de redirection on souhaite utiliser ;
  • / : Indique que l'on veut rediriger toutes les pages ;
  • nouveau-site.fr : L'adresse finale où l'on redirige notre visiteur.
Vous pouvez rediriger l'emplacement d'un dossier avec le code suivant :
Code:
Redirect permanent /dossier http://nouveau-site.fr


C'est exactement le même principe, sauf qu'au lieu du /, vous entrez l'emplacement du dossier .

Vous pouvez faire la même chose avec un fichier , au lieu du / vous entrez l'emplacement du fichier .
Exemple :
Code:
Redirect permanent /test.html http://nouveau-site.fr



Si vous avez unsite.sous-domaine.fr et que vous avez acheté un nom de domaine , vous copiez donc le contenu de votre site 'unsite.sous-domaine.fr' vers votre nouveau site : 'nouveau-site.fr'.
Mais vous n'avez pas envie de perdre tous vos membres , donc vous allez créer un fichier .htaccess avec l'instruction ci-dessus, et placé ce fichier à la racine du site 'unsite.sous-domaine.fr'.


Grâce à cette redirection, si vous allez sur unsite.sous-domaine.fr/page, vous êtes redirigé vers nouveau-site.fr/page ! C'est un gros avantage.


You must be registered for see images attach



Comment réécrire les URL de mes pages ?


Grâce au .htaccess, vous pouvez changer l'extension d'un fichier .
Par exemple vous avez une page "realitygaming.php?var1=500&pseudo=Snakes" et vous aimeriez que celle-ci s'affiche comme "realitygaming.html" par exemple.
On est d'accord que "realitygaming.php?var1=500&pseudo=Snakes" n'est pas très beau dans la barre d'URL. :p


Et bien, grâce aux
réécritures d'URL , c'est possible.
Nous allons utiliser l'instruction
RewriteRule.
Mais avant d'écrire notre
instruction , nous avons besoin de vérifier si les réécritures d'URL sont activées sur votre serveur .

Rendez-vous sur votre fichier de configuration
Apache (httpd.conf) et rechercher les lignes suivantes :
  • LoadModule rewrite_module libexec/mod_rewrite.so
  • AddModule mod_rewrite.c
Veuillez à vérifier que ces lignes ne sont pas commentées (# devant), si c'est le cas, dé-commentez-les et relancez Apache .

Placer le code ci-dessous dans votre fichier .htaccess, pour lancer la réécriture d'URL.

Code:
Options +FollowSymlinks
RewriteEngine On

  • RewriteEngine : Permet d'activer ou de désactiver la réécriture d'URL. (on/off)
  • Options +FollowSymlinks : Active la gestion des URL symboliques.
Nous allons donc ajouter une instruction avec RewriteRule, pour que le fichier realitygaming.php devienne realitygaming.html.
Code:
Options +FollowSymlinks
RewriteEngine On
RewriteRule    ^realitygaming.php?var1=500&pseudo=Snakes$ realitygaming.html [L]


  • [L] Signifie "Last", qui va stopper la réécriture.
Rendez-vous maintenant sur realitygaming.php, si tout s'est bien passé, vous avez realitygaming.html dans votre barre d'URL ! :cool:


You must be registered for see images attach



Pourquoi faire des redirections permanentes ?


Vous allez me dire, pourquoi faire une redirection temporaire alors que les autres fonctionnent très bien ?

Et bien, si vous mettez une redirection permanente et qu'un robot de référencement (google, yahou...) vient pendant que vous faites la redirection, il va mettre à jour sa base de données et par conséquent, faire perdre le référencement de cette partie.
Or, si vous utilisez une redirection temporaire, le moteur de recherche ne mettra pas à jour sa base de données et vous conserverez votre référencement.

Sans plus attendre, voici le code :
Code:
Redirect temp /todo/ http://nouveau-site.fr/temporaire/

  • Redirect : La directive habituelle ;
  • temp : Option de la directive ;
  • /todo/ : Cible par la redirection ;
  • nouveau-site.fr/temporaire/ : URL d'arrivée.
Rien de compliquer, n'est-ce pas ? :D


You must be registered for see images attach


C'est tout pour la redirection HTTP, avec ça vous avez de quoi rediriger vos visiteurs correctement, sans oublier les expressions régulières.
Ce tutoriel touche à sa fin.
J'espère qu'il vous aura été utile, si vous avez des questions n'hésitez pas à répondre sur ce sujet. ;)


:RG:
 
Bonjour à tous, :membre:

Je vous retrouve aujourd'hui pour vous expliquer comment rediriger votre site en cas de déménagement d'URL .


You must be registered for see images attach



Qu'est-ce qu'une redirection ?


Une redirection est un moyen de transférer le visiteur de manière automatique vers une autre page. Il existe différents types de redirection sous plusieurs technologies :

  • La redirection HTTP ;
  • La redirection HTML ;
  • La redirection PHP ;
  • La redirection Javascript.
Evidemment, il y en a des meilleurs que d'autres.
Dans ce tutoriel, je vais choisir la redirection HTTP , car j'avais déjà abordé le .htaccess dans mon ancien sujet, et puis c'est une très bonne méthode de redirection. ;)

Donc pour la redirection HTTP, tout se passe dans le fichier .htaccess , donc elle fonctionne avec Apache .



You must be registered for see images attach



Comment fonctionne les redirections HTTP ?


Je vous rappelle que chaque ligne d'un fichier .htaccess est une instruction , celle-ci est exécutée par Apache .
Pour cette introduction, nous allons commencer en douceur, avec l'instruction RedirectMatch.

Voici un exemple d'utilisation de cette instruction :
Code:
RedirectMatch seeother ^/php/(.*)\.php$ https://test.reality-gaming.fr/php/$1.php


Une explication s'impose, n'est-ce pas ? :p
  • RedirectMatch : C'est l'instruction de redirection, ça dit ce que l'on va faire ;
  • seeother : C'est une option de l'instruction RedirectMatch ;
  • ^/php/(.*)\.php$ : La cible de l'instruction de redirection ;
  • test.reality-gaming.fr/php/$1.php : L'adresse finale où l'on redirige notre visiteur.
Nous allons voir les redirections permanentes désormais.

En changeant d'URL, vous savez les risques qu'impose un tel changement, le non suivi des visiteurs, une baisse d'activité, votre site pourrait ne plus être référencé, etc.
Mais tous ces problèmes peuvent être corrigés simplement, grâce aux redirections !

Pour ce faire, nous allons utiliser l'instruction Redirect permanent.
Voici un exemple d'utilisation de cette instruction :
Code:
Redirect permanent / http://nouveau-site.fr


Je vais vous expliquer ce code :
  • Redirect permanent : Instruction qui spécifie quel type de redirection on souhaite utiliser ;
  • / : Indique que l'on veut rediriger toutes les pages ;
  • nouveau-site.fr : L'adresse finale où l'on redirige notre visiteur.
Vous pouvez rediriger l'emplacement d'un dossier avec le code suivant :
Code:
Redirect permanent /dossier http://nouveau-site.fr


C'est exactement le même principe, sauf qu'au lieu du /, vous entrez l'emplacement du dossier .

Vous pouvez faire la même chose avec un fichier , au lieu du / vous entrez l'emplacement du fichier .
Exemple :
Code:
Redirect permanent /test.html http://nouveau-site.fr



Si vous avez unsite.sous-domaine.fr et que vous avez acheté un nom de domaine , vous copiez donc le contenu de votre site 'unsite.sous-domaine.fr' vers votre nouveau site : 'nouveau-site.fr'.
Mais vous n'avez pas envie de perdre tous vos membres , donc vous allez créer un fichier .htaccess avec l'instruction ci-dessus, et placé ce fichier à la racine du site 'unsite.sous-domaine.fr'.


Grâce à cette redirection, si vous allez sur unsite.sous-domaine.fr/page, vous êtes redirigé vers nouveau-site.fr/page ! C'est un gros avantage.


You must be registered for see images attach



Comment réécrire les URL de mes pages ?


Grâce au .htaccess, vous pouvez changer l'extension d'un fichier .
Par exemple vous avez une page "realitygaming.php?var1=500&pseudo=Snakes" et vous aimeriez que celle-ci s'affiche comme "realitygaming.html" par exemple.
On est d'accord que "realitygaming.php?var1=500&pseudo=Snakes" n'est pas très beau dans la barre d'URL. :p


Et bien, grâce aux
réécritures d'URL , c'est possible.
Nous allons utiliser l'instruction
RewriteRule.
Mais avant d'écrire notre
instruction , nous avons besoin de vérifier si les réécritures d'URL sont activées sur votre serveur .

Rendez-vous sur votre fichier de configuration
Apache (httpd.conf) et rechercher les lignes suivantes :
  • LoadModule rewrite_module libexec/mod_rewrite.so
  • AddModule mod_rewrite.c
Veuillez à vérifier que ces lignes ne sont pas commentées (# devant), si c'est le cas, dé-commentez-les et relancez Apache .

Placer le code ci-dessous dans votre fichier .htaccess, pour lancer la réécriture d'URL.

Code:
Options +FollowSymlinks
RewriteEngine On

  • RewriteEngine : Permet d'activer ou de désactiver la réécriture d'URL. (on/off)
  • Options +FollowSymlinks : Active la gestion des URL symboliques.
Nous allons donc ajouter une instruction avec RewriteRule, pour que le fichier realitygaming.php devienne realitygaming.html.
Code:
Options +FollowSymlinks
RewriteEngine On
RewriteRule    ^realitygaming.php?var1=500&pseudo=Snakes$ realitygaming.html [L]


  • [L] Signifie "Last", qui va stopper la réécriture.
Rendez-vous maintenant sur realitygaming.php, si tout s'est bien passé, vous avez realitygaming.html dans votre barre d'URL ! :cool:


You must be registered for see images attach



Pourquoi faire des redirections permanentes ?


Vous allez me dire, pourquoi faire une redirection temporaire alors que les autres fonctionnent très bien ?

Et bien, si vous mettez une redirection permanente et qu'un robot de référencement (google, yahou...) vient pendant que vous faites la redirection, il va mettre à jour sa base de données et par conséquent, faire perdre le référencement de cette partie.
Or, si vous utilisez une redirection temporaire, le moteur de recherche ne mettra pas à jour sa base de données et vous conserverez votre référencement.

Sans plus attendre, voici le code :
Code:
Redirect temp /todo/ http://nouveau-site.fr/temporaire/

  • Redirect : La directive habituelle ;
  • temp : Option de la directive ;
  • /todo/ : Cible par la redirection ;
  • nouveau-site.fr/temporaire/ : URL d'arrivée.
Rien de compliquer, n'est-ce pas ? :D


You must be registered for see images attach


C'est tout pour la redirection HTTP, avec ça vous avez de quoi rediriger vos visiteurs correctement, sans oublier les expressions régulières.
Ce tutoriel touche à sa fin.
J'espère qu'il vous aura été utile, si vous avez des questions n'hésitez pas à répondre sur ce sujet. ;)


:RG:
Superbe Tutos, je rajoute une ligne dans mon ficher spécial à @Snake's : fait de superbes tutos (hug)
 
realitygaming.php?var1=500&pseudo=Snakes
Bon tutoriel, malgré que l'exemple est mal choisi, c'est une requête en GET donc c'est voulu de laisser les variables passer en URL, m'enfin good job. (d)
 
Statut
N'est pas ouverte pour d'autres réponses.
Retour
Haut