url rewriting dans htaccess - supprimer tous les paramètres après "?"

Petit nouveau ! | 8 Messages

13 mars 2015, 12:55

Je cherche à faire une règle de redirection dans mon htaccess mais je ne m'en sors pas.

Je veux que la page suivante :
http://www.monsite.fr/aaa/bbb/fort-21.h ... re=default
soit redirigée vers :
http://www.monsite.fr/aaa/bbb/fort-21.html

ou dans le même style :
http://www.monsite.fr/gemmotherapie-110 ... tegory=110
vers
http://www.monsite.fr/gemmotherapie-110

J'aimerais que tous les paramètres après le ? soient supprimés.

Comment faire cela ?

Avatar du membre
Modérateur PHPfrance
Modérateur PHPfrance | 10684 Messages

13 mars 2015, 14:42

Quelque chose comme ça ?

RewriteRule ^/ta_page /ta_page?

sinon tu peux aussi jouer avec les parenthèse pour capturer la partie de la chaine située avant le "?" et l'utiliser dans la redirection
Ce n'est pas en améliorant la bougie que l'on a inventé l'ampoule...

Petit nouveau ! | 8 Messages

13 mars 2015, 15:58

Par rapport à l'url que j'ai donnée en exemple, j'ai testé ça :
RewriteRule ^aaa/bbb/fort-21.\.html(.*)$ /fort-21.html? [R=301,L]
mais ça ne fonctionne pas.

J'ai essayé aussi ça :
RewriteCond %{QUERY_STRING} ^___store=[a-z]&___from_store=[a-z]$
RewriteRule ^$ /? [R=301,L]
mais pas mieux.

Mammouth du PHP | 688 Messages

13 mars 2015, 16:12

RewriteCond %{QUERY_STRING} ^___store=[a-z]+&___from_store=[a-z]+$

vu qu'il n'y a pas qu'une lettre comme valeur.
Modifié en dernier par tof73 le 13 mars 2015, 16:33, modifié 1 fois.

Petit nouveau ! | 8 Messages

13 mars 2015, 16:23

ça ne fonctionne toujours pas :(