redirection de tout ce qui finit par ...

Nouveau WRInaute
Bonjour

je souhaite que toutes mes URL finissant par &start=0 soient redirigées vers cette même url mais sans &start=0

j'ai écrit dans le htaccess

Rewriterule ^(.*)&start=0 /$1 [L,R=301]

ça marche avec les url qui ne contiennent pas de php? mais pas avec celles-ci par exemple:

offres.php?all&start=0 ou offres.php?CODE_REG=all&start=0

qu'ai-je oublié ?

merci
 
Nouveau WRInaute
reglisse a dit:
le plus simple serai encore de faire un test sur les pages en php

Bonjour

je ne sais pas faire ce que tu dis, j'imagine qu'il y a du rewritecond, mais je ne domine pas trop cela.
Si tu pouvais m'en dire plus...

J'ai rajouté QSA à ma règle sans succès.
 
Nouveau WRInaute
reglisse a dit:
tu connais tous les variables qu'il peut y avoir à la suite de offres.php?........
oui, je les connais

J'ai testé Rewriterule ^offres.php?all&start=0 /offres.php?all [L,R=301] mais ça ne fonctionne pas!

je ne comprends pas
 
Nouveau WRInaute
J'ai finalement mis ça

RewriteCond %{QUERY_STRING} (.*)&start=0$
RewriteRule .* /offres.php?%1 [R=301,L]

Rewriterule ^(.*)&start=0 /$1 [QSA,L,R=301]

qui fonctionne
 
Nouveau WRInaute
Bonjour.

J'ai le même type de problème. Le site dont je m'occupe, www.site.com , est également accessible via www.site.com/?lang=fr . Je souhaite rediriger toutes les pages qui se terminent par "?lang=fr" vers leur équivalent sans "?lang=fr". En me basant sur la solution décrite ci-dessus est-ce que le code suivant est correct?

RewriteCond %{QUERY_STRING} (.*)?lang=fr$
RewriteRule .* /index.php?%1 [R=301,L]

Rewriterule ^(.*)?lang=fr /$1 [QSA,L,R=301]

Merci de votre aide.
 
Nouveau WRInaute
Arrmani a dit:
Bonjour.

J'ai le même type de problème. Le site dont je m'occupe, www.site.com , est également accessible via www.site.com/?lang=fr . Je souhaite rediriger toutes les pages qui se terminent par "?lang=fr" vers leur équivalent sans "?lang=fr". En me basant sur la solution décrite ci-dessus est-ce que le code suivant est correct?

RewriteCond %{QUERY_STRING} (.*)?lang=fr$
RewriteRule .* /index.php?%1 [R=301,L]
Rewriterule ^(.*)?lang=fr /$1 [QSA,L,R=301]

Merci de votre aide.

Cela ne fonctionne pas puisque toutes les pages redirigent vers la home (index). :(

Quelqu'un aurait une solution?
 
Nouveau WRInaute
Arrmani a dit:
Bonjour.

J'ai le même type de problème. Le site dont je m'occupe, www.site.com , est également accessible via www.site.com/?lang=fr . Je souhaite rediriger toutes les pages qui se terminent par "?lang=fr" vers leur équivalent sans "?lang=fr". En me basant sur la solution décrite ci-dessus est-ce que le code suivant est correct?

RewriteCond %{QUERY_STRING} (.*)?lang=fr$
RewriteRule .* /index.php?%1 [R=301,L]

Rewriterule ^(.*)?lang=fr /$1 [QSA,L,R=301]

Merci de votre aide.
et si tu supprimes la dernière ligne et le ? sur la première, car query string prend en compte tout ce qui se situe après le ?
 
Discussions similaires
Haut