[Résolu] RewriteRule et URL dynamique
9 messages
• Page 1 sur 1
Consultez la formation URL Rewriting et sites dynamiques de WebRankInfo / Ranking Metrics
- jfb037
- Nouveau WRInaute

- Messages: 5
- Inscription: 21 Jan 2011
[Résolu] RewriteRule et URL dynamique
Bonjour,
Voici un extrait de mon htaccess
Ma redirection de marque (la dernière) ne semble pas fonctionner.
Je souhaite rediriger :
/professionnel/product_info.php?manufacturers_id=10&products_id=2995
Vers :
/professionnel/product_info.php?manufacturers_id=26&products_id=2995
Quelqu'un aurait-il une piste ?
Cordialement
Voici un extrait de mon htaccess
- Code: Tout sélectionner
RewriteEngine On
RewriteBase /professionnel/
ErrorDocument 401 /401.html
# ErrorDocument 404 /professionnel/non-trouve.html
ErrorDocument 404 http://www.monsite.com/professionnel/advanced_search.php
# permet d être sûr que les clients ont les modifs de css
RewriteRule ^templates/Original/stylesheet.[0-9]+.css /professionnel/templates/Original/stylesheet.css [L]
RewriteRule ^templates/Original/menu.[0-9]+.css /professionnel/templates/Original/menu.css [L]
# redirection modif marque
RewriteCond %{QUERY_STRING} ^manufacturers_id=10$
RewriteRule ^product_info\.php?manufacturers_id=10(.*)$ /professionnel/product_info.php?manufacturers_id=26$1 [L]
Ma redirection de marque (la dernière) ne semble pas fonctionner.
Je souhaite rediriger :
/professionnel/product_info.php?manufacturers_id=10&products_id=2995
Vers :
/professionnel/product_info.php?manufacturers_id=26&products_id=2995
Quelqu'un aurait-il une piste ?
Cordialement
Dernière édition par jfb037 le Ven Jan 21, 2011 14:47, édité 1 fois.
-

Blount - WRInaute occasionnel

- Messages: 430
- Inscription: 18 Nov 2010
Re: RewriteRule et URL dynamique
Les query string ne doivent pas apparaitre dans le RewriteRule.
QSA permet de faire passer les paramètres URL (au lieu de ton $1).
À voir si ton "manufacturers_id=10" ne passe pas quand même.
- Code: Tout sélectionner
# redirection modif marque
RewriteCond %{QUERY_STRING} ^manufacturers_id=10$
RewriteRule ^product_info\.php$ /professionnel/product_info.php?manufacturers_id=26 [QSA,L]
QSA permet de faire passer les paramètres URL (au lieu de ton $1).
À voir si ton "manufacturers_id=10" ne passe pas quand même.
- jfb037
- Nouveau WRInaute

- Messages: 5
- Inscription: 21 Jan 2011
Re: RewriteRule et URL dynamique
Merci Blont,
Cela ne semble pas fonctionner
Quand doit-on mettre product_info\.php à la place de product_info.php ?
J'ai essayer avec et sans \, j'ai le même résultat (pas de redirection)
J'ai essayer sans RewriteCond
Pas mieux
Voici une redirection qui fonctionne si cela peut orienter.
Cela ne semble pas fonctionner
Quand doit-on mettre product_info\.php à la place de product_info.php ?
- Code: Tout sélectionner
# redirection modif marque
RewriteCond %{QUERY_STRING} ^manufacturers_id=10$
RewriteRule ^product_info\.php$ /professionnel/product_info.php?manufacturers_id=26 [QSA,L]
J'ai essayer avec et sans \, j'ai le même résultat (pas de redirection)
J'ai essayer sans RewriteCond
- Code: Tout sélectionner
RewriteRule ^product_info\.php?manufacturers_id=10(.*)$ /professionnel/product_info.php?manufacturers_id=26$1 [L]
Pas mieux
Voici une redirection qui fonctionne si cela peut orienter.
- Code: Tout sélectionner
# redirection modif menu 2010
RewriteCond %{QUERY_STRING} ^cPath=192_195$
RewriteRule ^index\.php$ /professionnel/index\.php?cPath=444_509 [R=301,L]
-

forty - WRInaute passionné

- Messages: 1701
- Inscription: 30 Oct 2008
Re: RewriteRule et URL dynamique
si tu as plusieurs paramètres c'est plutôt :
- Code: Tout sélectionner
RewriteCond %{QUERY_STRING} ^(.*&)?manufacturers_id=10(&.*)?$
RewriteRule ^product_info\.php$ /professionnel/product_info.php?%1manufacturers_id=26%2 [L]
- jfb037
- Nouveau WRInaute

- Messages: 5
- Inscription: 21 Jan 2011
Re: RewriteRule et URL dynamique
Super forty cela fonctionne.
Par contre j'ai besoin d'une explication de texte :
(.*&)
(&.*) C'est pour remplacer tous les paramètres ? Pourquoi ils ne sont pas écrit dans le même sens ?
%1
%2 C'est pour rapeller ces paramètres ?
Si je comprend bien c'est équivalent à (.*) et $1 et $2 ?
Merci
Par contre j'ai besoin d'une explication de texte :
- Code: Tout sélectionner
RewriteCond %{QUERY_STRING} ^(.*&)?manufacturers_id=10(&.*)?$
RewriteRule ^product_info\.php$ /professionnel/product_info.php?%1manufacturers_id=26%2 [L]
(.*&)
(&.*) C'est pour remplacer tous les paramètres ? Pourquoi ils ne sont pas écrit dans le même sens ?
%1
%2 C'est pour rapeller ces paramètres ?
Si je comprend bien c'est équivalent à (.*) et $1 et $2 ?
Merci
-

forty - WRInaute passionné

- Messages: 1701
- Inscription: 30 Oct 2008
Re: RewriteRule et URL dynamique
"." veut dire n'importe quel caractère
"*" veut dire que ce qui précède peut-être répété de 0 à l'infini
"&" veut dire "&"
les parenthèses c'est pour mémoriser
"?" c'est pour dire que ce qui précède est facultatif
=> ca permet de mémoriser d'éventuels paramètres avant manufacturers_id (même principe pour les paramètres après)
%1 correspond à la première valeur mémorisée dans un RewriteCond entre () et %2 la deuxième
"*" veut dire que ce qui précède peut-être répété de 0 à l'infini
"&" veut dire "&"
les parenthèses c'est pour mémoriser
"?" c'est pour dire que ce qui précède est facultatif
=> ca permet de mémoriser d'éventuels paramètres avant manufacturers_id (même principe pour les paramètres après)
%1 correspond à la première valeur mémorisée dans un RewriteCond entre () et %2 la deuxième
-

forty - WRInaute passionné

- Messages: 1701
- Inscription: 30 Oct 2008
Re: RewriteRule et URL dynamique
"&" étant le séparateur de paramètres dans une url, c'est plus propre de le mettre. Sinon si tu as une url de ce type ca sera aussi redirigé : /professionnel/product_info.php?toto=123&autre_manufacturers_id=10&products_id=2995
9 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 :
- [resolu] Rewriterule Page dynamique.
- [Résolu]URL Rewriting & OVH: certaines RewriteRule HS
- [RESOLU]aide RewriteRule pour url du genre ?p=x vers node/y
- [Résolu] url statique au lieu d'url dynamique
- Faire un lien dynamique pour RewriteRule
- RewriteCond et RewriteRule[Résolu ^^]
- [Résolu] Problème d'écriture RewriteRule
- [Résolu] RewriteRule sur un même domaine
- [résolu] Faire cohabiter un RewriteRule et un RedirectMatch
- [Résolu]Problème de syntaxe pour une RewriteRule
- Calcul du nombre de 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. - Transformer des citations en liens
Cet outil vous permet de trouver des pages citant votre site mais ne faisant pas (encore) de lien. Il suffira parfois d'un simple mail pour transformer cette simple citation en lien (backlink).
Qui est en ligne
Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 0 invités
