Url rewriting + redirection 301 + htaccess

Consultez la formation URL Rewriting et sites dynamiques de WebRankInfo / Ranking Metrics

poupilou
WRInaute discret
WRInaute discret
 
Messages: 237
Inscription: 9 Fév 2004

Url rewriting + redirection 301 + htaccess

Message le Lun Juin 04, 2007 11:10

Salut,

J'ai lu beaucoup de threads sur ce forum concernant l'url rewriting et les redirection 301, j'ai essayé beaucoup de choses sur mon site mais rien ne fonctionne correctement.

Voici ce que je souhaite faire :

j'ai des url du type http://www.monsite.com/index.php?rub=societe que je souhaite transformer en http://www.monsite.com/societe.html et je souhaite mettre une redirection 301 de mes anciennes url vers mes nouvelles (rien de bien compliqué en thérie, mais en pratique...).

J'ai donc opté pour un fichier htaccess que voici :

RewriteEngine on
RewriteRule ^([a-zA-Z]*).html$ /index.php?rub=$1 [L]


Pas de problème avec ce bout de code il marche parfaitement, l'url rewrinting fonctionne bien.

Mon souci est maintenant de mettre en place la redirection 301 dans ce fichier htaccess, là j'ai essayé pendant plus de 3 jours des bouts de codes trouvé sur des forums mais rien ne marche... j'en ai un peu ras le bol, quelqu'un a-t-il une solution qui marche ?

Je suis hébergé chez OVH en 60gp.

Merci d'avance pour votre aide et vos conseils.


nickargall
WRInaute accro
WRInaute accro
 
Messages: 6468
Inscription: 13 Juin 2005

Message le Lun Juin 04, 2007 11:20

Code: Tout sélectionner
RewriteEngine on
RewriteRule ^([a-zA-Z]*).html$ /index.php?rub=$1 [L]
RewriteRule ^index.php?rub=([a-zA-Z]*).html$ /$1.html [R=301,L]

peut etre ? (sans garantie)

poupilou
WRInaute discret
WRInaute discret
 
Messages: 237
Inscription: 9 Fév 2004

Message le Lun Juin 04, 2007 11:44

Merci nickargall pour ta réponse mais ça ne marche pas.

La redirection fonctionne mais la page qui a été rewritilisé ne s'affiche pas correctement.

Une autre suggestion ?

poupilou
WRInaute discret
WRInaute discret
 
Messages: 237
Inscription: 9 Fév 2004

Message le Lun Juin 04, 2007 16:06

Problème résolu !

Au lieu de passer par un htaccess pour mes redirections j'ai mis en place une redirection html :

<?php
if(ereg("rub=",$_SERVER['REQUEST_URI'])==1)
{
if(getenv("HTTP_HOST") == "127.0.0.1"){$url_actuelle = str_replace("/monsite.com/index.php?rub=", "", $_SERVER['REQUEST_URI']);}
else{$url_actuelle = str_replace("/index.php?rub=", "", $_SERVER['REQUEST_URI']);}
header("HTTP/1.1 301 Moved Permanently");
if(getenv("HTTP_HOST") == "127.0.0.1"){header("Location: http://127.0.0.1/monsite.com/".$url_actuelle.".html");}
else{header("Location: http://www.monsite.com/".$url_actuelle.".html");}
exit;
}
?>


Ce code est placé au tout debut du code de ma page index.php et ça marche très bien....


xescorp
WRInaute occasionnel
WRInaute occasionnel
 
Messages: 298
Inscription: 19 Jan 2007

Message le Mar Juin 05, 2007 21:53

Heureusement ce n'est pas une redirection HTML :D, car c très peu apprécié par les moteurs :
<meta http-equiv="refresh" content="0;url=http://www.monsite.com/index.php">

La solution que te proposait nickargall doit être à peu près correct.

Pour un système avec id cela donne ca :

RewriteRule ^[a-z0-9-]+/rubrique-([0-9]+).html$ rubrique.php?id=$1 [QSA,L]
RewriteRule ^[a-z0-9-]+/rubrique-([a-z0-9-]+).html$ rubrique.php?alias=$1 [QSA,L]

webtouterrain
Nouveau WRInaute
Nouveau WRInaute
 
Messages: 15
Inscription: 20 Juin 2007

Message le Jeu Juil 26, 2007 15:42

Je ne suis moi meme pas encore vraiment un pro de rewriting, et j'ai un peu le meme souci que poupilou, j'ai le code suivant:
RewriteEngine on
RewriteRule ^bureau.htm$ /?page=1

ce qui me donne la reecriture, mais j'aimerai aussi avoir une redirection 301, qui si je me rends sur www.monsite.com/?page=1 me redirige automatiquement vers www.monsite.com/bureau.htm

Merci de m'eclairer.


KOogar
WRInaute accro
WRInaute accro
 
Messages: 3974
Inscription: 16 Nov 2004

Re: Url rewriting + redirection 301 + htaccess

Message le Jeu Juil 26, 2007 16:11

poupilou a écrit:...et je souhaite mettre une redirection 301 de mes anciennes url vers mes nouvelles (rien de bien compliqué en thérie, mais en pratique...).


Inutile de faire du 301. les moteurs vont suivrent tes nouveaux liens, voir que les anciens liens sont morts et réindexer tout ca sans avoir besoin d'un quelconque 301. Experience à l'appuie :D

webtouterrain
Nouveau WRInaute
Nouveau WRInaute
 
Messages: 15
Inscription: 20 Juin 2007

Message le Jeu Juil 26, 2007 16:28

yes mais en fait je voulais faire ca, afin d'avoir à eviter de reprogrammer l'ensemble de mes liens sur la source du dit site.

merci :wink:


Si vous avez aimé cette discussion, partagez-la sur vos réseaux sociaux préférés :

Formation recommandée sur ce thème :

Formation URL Rewriting et sites dynamiques : apprenez comment mettre en place la réécriture d'URL, comment optimiser vos URL et profiter de vos pages dynamiques pour booster votre référencement. Formation animée par Olivier Duffez et Fabien Facériès, experts en référencement naturel.

Tous les détails sur le site Ranking Metrics : programme, prix, dates et lieux, inscription en ligne.

Lectures recommandées sur ce thème :

Consultez la description détaillée des produits ou services de Google suivants : Google goo.gl

  • Test de lien (type de redirection)
    Cet outil vous permet de tester la validité d'un lien pour le référencement. Il vous indique la nature du lien (lien en dur, redirection bien gérée par les moteurs ou redirection mal gérée par les moteurs).
  • Test HTTP header
    Cet outil vous permet de connaître le code HTTP renvoyé par le serveur pour une page donnée.
  • Analyse des backlinks
    Cet outil vous permet d'analyser en détails la "popularité" de votre site sur Google. En plus du nombre de liens pris en compte par Google, il calcule le pourcentage de liens internes parmi tous les liens, et il affiche les premières URL trouvées.


Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 0 invités