Redirection d'une url rewrit vers nouvelle url rewrit
5 messages
• Page 1 sur 1
Consultez la formation URL Rewriting et sites dynamiques de WebRankInfo / Ranking Metrics
-

keroin - WRInaute passionné

- Messages: 2308
- Inscription: 29 Avr 2006
Redirection d'une url rewrit vers nouvelle url rewrit
Bonsoir à tous,
Je cherche à rediriger via htaccess mes anciennes url rewritées (pas mal sont référencées) vers une nouvelle url rewritée.
En fait le rewrit fonctionne mais maintenant je dois rediriger les url référencées dans les moteurs vers les bonnes avec la nouvelle règle (oula pas très clair moi)
Voici mon ancienne règle de rewriting
Et voici la nouvelle
Quelle formule employer pour obtenir une redirection 301 des anciennes vers les nouvelles et que cela soit transparent pour les visiteurs venant des moteurs ?
Merci
Je cherche à rediriger via htaccess mes anciennes url rewritées (pas mal sont référencées) vers une nouvelle url rewritée.
En fait le rewrit fonctionne mais maintenant je dois rediriger les url référencées dans les moteurs vers les bonnes avec la nouvelle règle (oula pas très clair moi)
Voici mon ancienne règle de rewriting
- Code: Tout sélectionner
RewriteRule ^site-(.*).html$ /infos.php?id=$1 [L]
Et voici la nouvelle
- Code: Tout sélectionner
RewriteRule -s([0-9]*)\.html$ /page_site.php?id=$1 [L]
Quelle formule employer pour obtenir une redirection 301 des anciennes vers les nouvelles et que cela soit transparent pour les visiteurs venant des moteurs ?
Merci
Dernière édition par keroin le Ven Juil 13, 2007 2:55, édité 1 fois.
-

HawkEye - WRInaute accro

- Messages: 17013
- Inscription: 23 Fév 2004
Si tu passes la première en
PS: sinon, dans index.php, une vérification d'URL:
...peut aider également.
- Code: Tout sélectionner
RewriteRule ^site-(.*).html$ -s($1).html [QSA,L,R=301]
PS: sinon, dans index.php, une vérification d'URL:
- Code: Tout sélectionner
if($id)
{
if($_SERVER['REQUEST_URI'] != '-s'.$id.'.html)
{
header("Status: 301 Moved Permanently", false, 301);
header("Location: http://".$_SERVER['HTTP_HOST']."/-s".$id.".html");
exit;
}
}
...peut aider également.
-

keroin - WRInaute passionné

- Messages: 2308
- Inscription: 29 Avr 2006
Pour le moment la première ne fonctionne pas car il y a une deuxième variable qui entre en jeu qui n'est pas dans ma BDD mais transformée en php (une partie du titre de la page).
Pour la seconde j'obtiens des url avec tout le chemin vers la racine de mon serveur chez 1&1 dedans ???
Je fais des tests en ce moment pour trouver la bonne combinaison.
bhamp0 (sur le chat) m'a conseillé de passer par un fichier supplémentaire (redirection.php) pour éviter le duplicate content.
Ce qui donne dans le htaccess
RewriteRule ^site-([0-9]+).html$ redirection.php?id=$1 [R=301,L]
Et là ou je galère c'est pour pondre le code contenu dans le fichier redirection.php
ça doit être quelque chose comme ça
Mais rien à faire ça passe pas ???
ça doit être bourré d'erreur donc n'hésitez pas à les signaler
Pour la seconde j'obtiens des url avec tout le chemin vers la racine de mon serveur chez 1&1 dedans ???
Je fais des tests en ce moment pour trouver la bonne combinaison.
bhamp0 (sur le chat) m'a conseillé de passer par un fichier supplémentaire (redirection.php) pour éviter le duplicate content.
Ce qui donne dans le htaccess
RewriteRule ^site-([0-9]+).html$ redirection.php?id=$1 [R=301,L]
Et là ou je galère c'est pour pondre le code contenu dans le fichier redirection.php
ça doit être quelque chose comme ça
- Code: Tout sélectionner
<?php
$lk = connection_BD(); // Connection
// Recherche des variables dans la BDD
$sql = "SELECT * FROM $T_sites";
//envoi de la requete
$res = send_sql($sql,"trouver les variables");
while($infos = mysql_fetch_array($res))
{
$id = $infos['id'];
$titre = $infos['titre'];
$url_du_site_rw = id_to_url_page_site($infos['id'],$infos['titre']);
{
header("Status: 301 Moved Permanently", false, 301);
header("Location: http://".$_SERVER['HTTP_HOST']."/".$url_du_site_rw."-s".$id.".html");
exit;
}
?>
Mais rien à faire ça passe pas ???
ça doit être bourré d'erreur donc n'hésitez pas à les signaler
-

Bh@Mp0 - WRInaute discret

- Messages: 245
- Inscription: 18 Jan 2005
- Code: Tout sélectionner
<?php
// include pour la connexion
include("data_bd_annuaire.php");
// include pour la fonction id_to_url_page_site()
include("functions.php");
// Connexion
$lk = connection_BD();
// on vérifier la variable id
if(empty($_GET["id"])) exit;
$id = $_GET["id"];
// Recherche des variables dans la BDD
$sql = "SELECT titre FROM $T_sites WHERE id = '".$id."'";
//envoi de la requete
$res = send_sql($sql, "trouver le titre");
// on récupère le titre "brut"
$row = mysql_fetch_assoc($res);
// on le modifie à notre sauce
$url_du_site_rw = id_to_url_page_site($id, $row["titre"]);
// on envoie la sauce
header("Status: 301 Moved Permanently", false, 301);
header("Location: http://".$_SERVER['HTTP_HOST']."/".$url_du_site_rw);
exit;
?>
-

keroin - WRInaute passionné

- Messages: 2308
- Inscription: 29 Avr 2006
Un très grand merci à Bh@Mp0 qui m'a donné un grand coup de mains sur ce coup là (le code fonctionne à la perfection)
=> j'aime bien les commentaires du code alors je les ai laissé^^
Et évidemment un grand merci aussi au maître Jedi Hawk qui a indiqué la voie à suivre au jeune padawan que je suis...
@Bh@Mp0 : pour te remercier, si tu as besoin de BL pour un de tes sites, hésites pas ce sera avec plaisir (url et anchor par MP)...pas des sites de fesse hein^^
@Hawk : je t'aurais bien proposé la même chose mais tu es déjà sur ma home alors grand merci à toi.
=> j'aime bien les commentaires du code alors je les ai laissé^^
Et évidemment un grand merci aussi au maître Jedi Hawk qui a indiqué la voie à suivre au jeune padawan que je suis...
@Bh@Mp0 : pour te remercier, si tu as besoin de BL pour un de tes sites, hésites pas ce sera avec plaisir (url et anchor par MP)...pas des sites de fesse hein^^
@Hawk : je t'aurais bien proposé la même chose mais tu es déjà sur ma home alors grand merci à toi.
5 messages
• Page 1 sur 1
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 :
- URL rewrit avec redirection invisible
- rewrit
- regle de rewrit
- Epécher le duplicate content après url rewrit
- Problème URL Rewrit. et balise <base> d'après les navigateur
- regex pour rewrit accents et cactères interdits dans un url
- J'ai encore un doute sur le fonctionnement de mon url rewrit
- remplacer les espace par des "-" dans l'url rewrit
- Redirection Nouvelle URL
- Redirection 301 vers nouvelle adresse
- 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).
Qui est en ligne
Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 0 invités
