redirection article_1_3_4 vers article-1-3-4

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

srangaya
Nouveau WRInaute
 
Messages: 3
Inscription: Mar Mar 11, 2008 16:44

redirection article_1_3_4 vers article-1-3-4

Message le Mar Mar 11, 2008 16:54

Bonjour à tous,

Je profite que WRI soit de nouveau de retour pour m'inscrire et poser ma première question :D.

Est-ce que vous sauriez s'il est possible de faire une redirection permanante de type article_truc_machin_bidule vers article-truc-machin-bidule (il s'agit donc de remplacer tous les underscores par des tirets, sachant que le nombre d'underscore peut varier) en htaccess.

Pour ceux que ça intéresse, Google a référencé un tas d'articles en www.site.com/rubrique/article_truc_machin_bidule.php qui se nomment désormais www.site.com/rubrique/article-truc-machin-bidule.php. Ces nouvelles pages ont été référencés à nouveau mais j'aimerai créer cette URL pour ne pas que mes visiteurs ne tombent sur une page 404 :).

J'ai regardé les articles sur l'URL Rewriting mais je n'ai pas trouvé pour ce schéma.

Merci d'avance pour votre aide,

Stéphane R.

Vap
WRInaute accro
WRInaute accro
 
Messages: 1090
Inscription: Dim Juin 17, 2007 20:12

Message le Mar Mar 11, 2008 17:11

Tu peux faire une règle par nombre de soulignés présent. Pour deux par exemple:

Code: Tout sélectionner
RewriteRule rubrique/([^_]+)_([^_]+)_([^_]+).php rubrique/$1-$2-$3.php [L,R=301,QSA]

srangaya
Nouveau WRInaute
 
Messages: 3
Inscription: Mar Mar 11, 2008 16:44

Message le Mar Mar 11, 2008 17:56

Vap a écrit:Tu peux faire une règle par nombre de soulignés présent. Pour deux par exemple:

Code: Tout sélectionner
RewriteRule rubrique/([^_]+)_([^_]+)_([^_]+).php rubrique/$1-$2-$3.php [L,R=301,QSA]


Merci Vap ! Il y a un moyen pour que cela fonctionne pour quelque soit le nombre d'underscore ou il faut ajouter une ligne pour chaque nombre ?


Djoule_logo
WRInaute passionné
WRInaute passionné
 
Messages: 712
Inscription: Mer Mai 30, 2007 0:21

Message le Mar Mar 11, 2008 18:01

Je ne suis pas sur de mon coup, mais je dirai une ligne par nombre d'undersocre possible.

Vap
WRInaute accro
WRInaute accro
 
Messages: 1090
Inscription: Dim Juin 17, 2007 20:12

Message le Mar Mar 11, 2008 18:12

Oui, une ligne par nombre.

L'expression régulière suivante correspond à un nombre illimité de soulignés. Le problème, c'est qu'on ne peut pas récupérer les sous expressions avec la syntaxe de mod_rewrite:

Code: Tout sélectionner
(([^_]+)_)*[^_])


arnaudmn
WRInaute accro
WRInaute accro
 
Messages: 1483
Inscription: Mer Mai 11, 2005 18:20

Message le Mar Mar 11, 2008 20:02

Si le nomre de "_" est indéfini, fait la redirection directement dans ton script qui gère ta rubrique (vu que je suppose que ça doit être généré depuis une bdd).
En début de script, un truc du style :
Code: Tout sélectionner
if (strpos($_SERVER['REQUEST_URI'], "_")!==false) {
   $re = substr($_SERVER['REQUEST_URI'], "_", "-");
   header("Status: 301 Moved Permanently", false, 301);
   header("Location: ".$re);
   exit();
}

Vap
WRInaute accro
WRInaute accro
 
Messages: 1090
Inscription: Dim Juin 17, 2007 20:12

Message le Lun Mar 17, 2008 18:29

J'ai trouvé comment faire ça uniquement avec mod_rewrite. Il suffit de faire une redirection externe, pour pouvoir traiter l'url bout par bout.

La règle suivante (testée en local) fait le boulot:

Code: Tout sélectionner
RewriteRule ^(.+)_([^_]+)\.php http://localhost/$1-$2.php [R=301]


Par exemple, -http://localhost/article_1_2_3_4.php est réécrit en -http://localhost/article-1-2-3-4.php


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 News

  • Tester le 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).


Qui est en ligne

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