Ancienne URL qui revient après le Rewriting
19 messages • Page 1 sur 2 • 1, 2
Consultez la formation URL Rewriting et sites dynamiques de WebRankInfo / Ranking Metrics
Ancienne URL qui revient après le Rewriting
Bonjour à tous, j'ai un petit souci.
Je met en place l'URL Rewriting comme je le fais d'habitude. Mais cette fois-ci, cela ne fonctionne pas correctement sur un site précis.
1 - L'URL d'une page rewritée renvoit bien vers l'ancienne page, mais c'est l'url de l'ancienne page qui revient alors dans la barre d'adresse du navigateur...
2 - Second point, quelle est la meilleure méthode pour redirection 301 d'une page précise ? A la fin de la condition de réécriture, j'ai vu plusieurs solutions sur le forum, et je m'y perd avec les QSA, les L, les R=301, etc...
Merci d'avance !
Je met en place l'URL Rewriting comme je le fais d'habitude. Mais cette fois-ci, cela ne fonctionne pas correctement sur un site précis.
1 - L'URL d'une page rewritée renvoit bien vers l'ancienne page, mais c'est l'url de l'ancienne page qui revient alors dans la barre d'adresse du navigateur...
2 - Second point, quelle est la meilleure méthode pour redirection 301 d'une page précise ? A la fin de la condition de réécriture, j'ai vu plusieurs solutions sur le forum, et je m'y perd avec les QSA, les L, les R=301, etc...
- Code: Tout sélectionner
Options +FollowSymlinks
Options -Multiviews
RewriteEngine on
RewriteRule nouvelle-page.html /ancienne-page.php [R=301]
Merci d'avance !
-

nickargall - WRInaute accro

- Messages: 5321
- Inscription: Lun Juin 13, 2005 14:13
L'ajout de [R=301] provoque ce souci, l'URL réécrite est bien interprétée mais provoque l'appel et l'affichage de l'URL non réécrite.
Je ne connais pas bien la solution, faut-il dans ce cas doubler chaque règle de réécriture par un redirect match ? Question aux experts
Je ne connais pas bien la solution, faut-il dans ce cas doubler chaque règle de réécriture par un redirect match ? Question aux experts
-

nickargall - WRInaute accro

- Messages: 5321
- Inscription: Lun Juin 13, 2005 14:13
Oui, mais la question vient - je pense - du besoin de faire une redirection permanente des anciennes URL indexées par les moteurs vers les URL réécrites. A doubler d'un redirect match alors ?
-

nickargall - WRInaute accro

- Messages: 5321
- Inscription: Lun Juin 13, 2005 14:13
Euh non en fait , je ne pense pas, j'ai le même type de cas de figure
j'ai des
page.php?bla=1251&bli=1235
indexées
Hop je veux réécrire en
page-1251-1235.html
pas de souci
mais quand je veux mettre en place une redirection des anciennes URLs vers les nouvelles (pour les pages non réécrites indexées par les moteurs par exemple)
ben j'essaie le [R=301]
mais ça provoque l'affichage de l'URL non réécrite dans la barre d'adresse, même si le lien pointe vers l'URL réécrite
Donc je me dis que je dois coupler la réécriture d'url avec un redirectmatch
j'ai des
page.php?bla=1251&bli=1235
indexées
Hop je veux réécrire en
page-1251-1235.html
pas de souci
mais quand je veux mettre en place une redirection des anciennes URLs vers les nouvelles (pour les pages non réécrites indexées par les moteurs par exemple)
ben j'essaie le [R=301]
mais ça provoque l'affichage de l'URL non réécrite dans la barre d'adresse, même si le lien pointe vers l'URL réécrite
Donc je me dis que je dois coupler la réécriture d'url avec un redirectmatch
nickargall a écrit:ben j'essaie le [R=301]
mais ça provoque l'affichage de l'URL non réécrite dans la barre d'adresse, même si le lien pointe vers l'URL réécrite
Donc je me dis que je dois coupler la réécriture d'url avec un redirectmatch
Ca fait bidouille, contact ton hebergeur et demande lui pourquoi [R=301] provoque une coquille.
-

nickargall - WRInaute accro

- Messages: 5321
- Inscription: Lun Juin 13, 2005 14:13
Ben c'est Sivit mon hébergeur
-

nickargall - WRInaute accro

- Messages: 5321
- Inscription: Lun Juin 13, 2005 14:13
à l'occasion .. quoique là j'ai pas vraiment besoin de le faire, mais bon je verrai dans l'avenir 
-

Patrice A. - Modérateur

- Messages: 2413
- Inscription: Ven Fév 11, 2005 19:36
Vous êtes complètement embrouillés sur ce topic
Quand on écrit
RewriteRule nouvellepage.html anciennepage.php?param=valeur
Ca permet d'accéder au contenu de l'ancienne page, avec l'adresse de la nouvelle. Ok ?
Quand on écrit
RewriteRule nouvellepage.html anciennepage.php?param=valeur [R]
R=301 ou R (sa valeur par défaut est justement 301) veut dire : ok, mon cher serveur apache, fais une redirection PERMANENTE ET DEFINITIVE de nouvellepage.html vers anciennepage.php?param=valeur.
Ok ?
Donc quand le navigateur demande à Apache nouvellepage.html, Apache dit "euh attends, la page est déplacée définitivement, voilà sa nouvelle adresse : anciennepage.php?param=valeur.
Donc mon navigateur me répète : "mon vieux, la page a été déplacée, je change l'url dans la barre d'adresse pour que tu gardes en tête que maintenant, c'est ANCIENNEPAGE.PHP."
Ok ?
Si je veux rediriger anciennepage.php?param=valeur vers nouvellepage.html alors LA SEULE SOLUTION est de changer le code PHP de anciennepage.php pour lui dire "vérifie si on accède à tes infos depuis la bonne url.. sinon, redirige."
Ok ?
Quand on écrit
RewriteRule nouvellepage.html anciennepage.php?param=valeur
Ca permet d'accéder au contenu de l'ancienne page, avec l'adresse de la nouvelle. Ok ?
Quand on écrit
RewriteRule nouvellepage.html anciennepage.php?param=valeur [R]
R=301 ou R (sa valeur par défaut est justement 301) veut dire : ok, mon cher serveur apache, fais une redirection PERMANENTE ET DEFINITIVE de nouvellepage.html vers anciennepage.php?param=valeur.
Ok ?
Donc quand le navigateur demande à Apache nouvellepage.html, Apache dit "euh attends, la page est déplacée définitivement, voilà sa nouvelle adresse : anciennepage.php?param=valeur.
Donc mon navigateur me répète : "mon vieux, la page a été déplacée, je change l'url dans la barre d'adresse pour que tu gardes en tête que maintenant, c'est ANCIENNEPAGE.PHP."
Ok ?
Si je veux rediriger anciennepage.php?param=valeur vers nouvellepage.html alors LA SEULE SOLUTION est de changer le code PHP de anciennepage.php pour lui dire "vérifie si on accède à tes infos depuis la bonne url.. sinon, redirige."
Ok ?
ok, donc juste un header et ca suffit, dans le genre :
Edité par Dj_Apx pour sauver le topic d'un bug
- Code: Tout sélectionner
$url = "$_SERVER[REQUEST_URI]";
if($url=='/anciennepage.php?param=valeur')
{
header("HTTP/1.1 301 Moved Permanently");
header("Location: http://".$_SERVER['HTTP_HOST']."/nouvellepage.html ");
}
Edité par Dj_Apx pour sauver le topic d'un bug
ok, donc juste un header et ca suffit, dans le genre :
- Code: Tout sélectionner
$url = "$_SERVER[REQUEST_URI]";
if($url=='/anciennepage.php?param=valeur')
{
header("HTTP/1.1 301 Moved Permanently");
header("Location: http://".$_SERVER['HTTP_HOST']."/nouvellepage.html ");
}
19 messages • Page 1 sur 2 • 1, 2
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 :
- Optimiser le référencement d'un forum phpBB : réécriture d'URL
- Tutoriel URL Rewriting
- Suite de l'article sur le fichier .htaccess : l'URL rewriting
- l'URL Rewriting expliqué aux débutants
- 3ème partie de l'article .htaccess : les réécritures conditionnelles
- Les frames et le référencement
- L'URL Rewriting expliqué aux débutants
- Début du Full Crawl
- Combien Google indexe de pages ?
- Contraintes d'emplacement du Sitemap
Consultez la description détaillée des produits ou services de Google suivants : Google API
- Liste 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




le forum