Aller au contenu

Redirections 301 pages dynamiques avec .htaccess


parvati

Sujets conseillés

Bonsoir,

Malheureusement je n'arrive pas à mettre en place un code pour rediriger mes fiches-produits qui sont des pages dynamiques. Pour les pages html standard ça fonctionne très bien.

J'ai testé plusieurs formules trouvées par-ci par-là sur Internet, aucune ne fonctionne.

Voici à quoi ressemblent mes url: www.mon-site.com/PBSCProduct.asp?ItmID=6899633

J'aimerais les rediriger comme ça: www.mon-site.com/nouvelle-adresse.html

Toutes ces url sont semblables, seuls les nombres à la fin changent.

Si quelqu'un avait une idée...

Merci d'avance et bonne soirée.

Olivier

Lien vers le commentaire
Partager sur d’autres sites

Bonjour,

Dans l'adresse souhaitée (www.mon-site.com/nouvelle-adresse.html), tu ne fais aucune mention de l'identifiant de la page. Or cela est indispensable, sinon comment faire le lien entre l'adresse frontale et l'adresse réeelle (à moins de les faire une par une ce qui n'est à priori pas le but) ? Ça devrait plutôt être du style www.mon-site.com/6899633-nouvelle-adresse.html voire même www.mon-site.com/product-6899633-nouvelle-adresse.html ("product" identifiant du type de d'objet, et 6899633 identifiant de l'objet lui-même, et "nouvelle-adresse" un texte quelconque).

Lien vers le commentaire
Partager sur d’autres sites

Bonjour,

Je ne comprends pas vraiment ta remarque. Peut-être que je n'ai pas été clair, désolé, je ne suis pas un spécialiste. J'ai fait plusieurs fois des .htaccess mais jamais avec des url dynamiques.

Mon but est de remplacer un site ecommerce (un site Oxatis) par un site "catalogue" ou "vitrine" dont j'ai déjà préparé les pages html**. Ce sont des pages html toutes simples sans fonction e-commerce, textes, balises H, menu dynamique de navigation et quelques images. Je souhaite donc faire pointer certaines anciennes url de fiches articles (donc du style /PBSCProduct.asp?ItmID=6899633) sur des pages html faites pour les remplacer. En ce moment, toutes les pages html standard de l'ancien site (les pages non-dynamiques: catégories, sous catégories de la boutique Oxatis...) pointent parfaitement sur mes nouvelles pages html grâce au .htaccess que j'ai fait. J'aimerais donc en faire de même pour certaines "pages produits".

Toutes ces pages "articles" sont du même style monsite.com/PBSCProduct.asp?ItmID=6899633, seul le nombre final change. Admettons que celle-ci est celle du "savon à la rose" j'ai préparé une page html que j'ai appelée savon-rose.html j'aimerais donc que monsite.com/PBSCProduct.asp?ItmID=6899633 pointe vers monsite.com/savon-rose.html

monsite.com/PBSCProduct.asp?ItmID=6895623 (savon au miel) pointe vers monsite.com/savon-miel.html

Etc, etc... tout cela sous la même url www.monsite.com

C'est bien sûr des redirections que je dois écrire une à une, c'est pourquoi je ne veux pas toutes les récupérer mais seulement les indispensables, il y a 1'200 articles... (j'ai mis en place une redirection "ErrorDocument 404 /bad_request.html" pour que les pages non-redirigées tombent sur une page d'accueil avec de liens).

Voilà, est-ce que c'est moin confus comme ça ?

Merci d'avance

Olivier

**

Sous la même url, j'ai changé les serveurs de noms Oxatis hier vers mon hébergeur perso et Google pointe déjà sur mes nouvelles pages et toutes les pages produits dynamiques donnent une erreur 404, normal.

Lien vers le commentaire
Partager sur d’autres sites

Bonsoir,

Malheureusement ça ne fonctionne pas. Google m'envoie sur ma page 404 personnalisée.

J'ai mis ce code sur deux lignes, à la suite de mes redirections 301 de pages statiques, si c'est bien ça alors ça ne marche pas.

Une autre variante possible ?

Et pour les autres codes que j'ai trouvés hier en règle générale c'est [R=301,L] et par [L]

Olivier

Lien vers le commentaire
Partager sur d’autres sites

Je croyais que tu voulais faire une réécriture. Pour une redirection 301, alors c'est plutôt :

RewriteCond %{QUERY_STRING} ^ItmID=6899633
RewriteRule ^PBSCProduct\.asp$ http://www.monsite.com/savon-rose.html? [R=301,L]

PS : et mets ça plutôt au début de tes règles (après le "RewriteEngine On"), tout au moins le temps de faire les tests.

Lien vers le commentaire
Partager sur d’autres sites

"PS : et mets ça plutôt au début de tes règles (après le "RewriteEngine On"), tout au moins le temps de faire les tests."

C'est bien de la redirection 301 que je dois faire et ça ne marche pas non plus. Par contre je n'ai pas du tout de "RewriteEngine On" dans mon fichier .htaccess c'est indispensable ça ? Il fonctionne bien comme ça pour mes url statiques... Je dois rajouter ça quelque part ?

Lien vers le commentaire
Partager sur d’autres sites

Pas la peine de le rajouter si ça marche (on ne le rajoute que quand ce n'est pas paramétré de base dans le php.ini)

Mets quand même la règle ci-dessus au début de ton .htaccess, pour être sûr que ce n'est pas une autre règle qui interfère.

Lien vers le commentaire
Partager sur d’autres sites

Bonjour,

Toujours pas trouvé de solution qui marche... Dans le cas d'une réécriture d'url. Le code est a insérer dans chaque page html concernée ?? Sans un fichier htaccess ? Finalement, dois-je me diriger plutôt vers une réécriture que vers des redirections 301 ?

Lien vers le commentaire
Partager sur d’autres sites

Donne-nous le contenu de ton fichier .htaccess, sans en changer une seule ligne.

Si ça ne fonctionne pas, l'erreur est plus que vraisemblablement là dedans !

Lien vers le commentaire
Partager sur d’autres sites

Bonsoir,

Voici une copie de mon htaccess tel qu'il est en ce moment, les redirections de pages statiques renvoient vers mon nouveau site et elles fonctionnent très bien (j'ai juste changé le nom du site en faisant un "rechercher-remplacer" donc aucune virgule n'a été changée à part ça). J'ai laissé les deux première lignes avec le scripte qui ne fonctionne pas.

A noter qu'il s'agit là de la partie allemande de l'ancien site, tellement mal référencée qu'elle me sert de "cobaye" pour faire les redirections des pages en français pour lesquelles je ne devrai pas me planter...

RewriteCond %{QUERY_STRING} ^ItmID=6912749
RewriteRule ^PBSCProduct\.asp$ http://www.monsite.com/aroma-stone-oatmeal-xml-581-2236.html? [R=301,L]
ErrorDocument 400 /bad_request.html
ErrorDocument 404 /bad_request.html

Modifié par Dan
supprimé toutes tes lignes "Rewrite 301" qui ne servent à rien d'autre qu'à encombrer le post ;)
Lien vers le commentaire
Partager sur d’autres sites

Je pense que si tu as de nombreuses URLs de type www.mon-site.com/PBSCProduct.asp?ItmID=6899633 , tu devrait plutôt utiliser la directive RewriteMap après avoir créé une table de correspondance entre tes numéros de produit et les URLs nouvelles.

Tu trouveras les explications sur le site d'Apache http://httpd.apache....html#rewritemap

Tu trouveras un exemple concret sur cette page : http://www.webmaster...che/3239775.htm (l'exemple corrigé est donné au 4ème post de cette discussion)

Lien vers le commentaire
Partager sur d’autres sites

Bonjour,

Merci, mais je ne pense pas pouvoir m'en sortir avec ça. Trop compliqué pour moi.

Avant de me casser encore trop la tête j'aimerais savoir si je ne suis pas tout simplement en train de perdre mon temps, sachant que j'aimerais en fait juste sauvez le pagerank de certaines pages. Je suis tombé sur le site rankspirit.com (page redirections.php) et je lis ceci, concernant les redirections 301:

"... La page conserve son "PageRank" et sa place dans les résultats des moteurs de recherche (sauf si son contenu a changé)."

C'est à la lecture de ce qui est en rouge que je me demande si mes redirections sont bien utilies sanchant qu'elles vont toutes pointer vers de nouvelles pages (certes, ayant le même thème, le même nom et sur la même url) mais pas exactement le même contenu. Les originales sont produites par la solution e-commerce Oxatis et les nôtres par nous-mêmes. En gros, même mes redirections 301 de pages statiques, qui fonctionnent très bien, risquent de me faire perdre mon pagerank... Si ce risque est élevé, alors je ne vais pas perdre mon temps à faire des redirections de pages dynamiques, toutes les pages statiques sont déjà redirigées sur les nouvelles et les autres sur ma page erreur 404 personnalisée. Au moins, les visiteurs seront correctement redirigés.

Lien vers le commentaire
Partager sur d’autres sites

Veuillez vous connecter pour commenter

Vous pourrez laisser un commentaire après vous êtes connecté.



Connectez-vous maintenant
×
×
  • Créer...