urlrewriting et "?"

  • Auteur de la discussion Auteur de la discussion yann214
  • Date de début Date de début
WRInaute discret
Je n'ai pas bien compris ce que tu voulais faire ^^

Sinon magic corp., pourquoi "QSA," dans les "[]" de la fin ?

Quesque ça veut dire ^o) ?
 
WRInaute occasionnel
@samuel220093 : QSA ajoute les paramettres (tout ce qu'il y a après le ?) à la fin de la nouvelle URL.

Je corrige juste un truc de ma présedente réponse:
Code:
RewriteRule ^/$ /index.php [R=301,QSA,L]
OU
Code:
RewriteRule ^$ /index.php [R=301,QSA,L]
Les deux règle son quasi identique, mais des fois les config serveur accepte l'une et pas l'autre.

Pour résumé, si tu n'as pas de nom de fichier spécifier tu redirige (d'où le R=301) vers index.php paramettres inclu (d'où le QSA)

Enfin c'est que j'ai compris de ton problème.

PS : Il y a d'autre moyen d'arrivé au même resultat
 
WRInaute occasionnel
magic corp. a dit:
@samuel220093 : QSA ajoute les paramettres (tout ce qu'il y a après le ?) à la fin de la nouvelle URL.

Je corrige juste un truc de ma présedente réponse:
Code:
RewriteRule ^/$ /index.php [R=301,QSA,L]
OU
Code:
RewriteRule ^$ /index.php [R=301,QSA,L]
Les deux règle son quasi identique, mais des fois les config serveur accepte l'une et pas l'autre.

Pour résumé, si tu n'as pas de nom de fichier spécifier tu redirige (d'où le R=301) vers index.php paramettres inclu (d'où le QSA)

Enfin c'est que j'ai compris de ton problème.

PS : Il y a d'autre moyen d'arrivé au même resultat

Ahh ok !!!!
Pardon j'avais pas compris :)
Un grand merci à toi !
 
WRInaute occasionnel
un peu plus difficille car j'ai pas encore ce que je voulais...

si dons mon url finale je veux en paramètre non seulement le "id=12" mais également le répertoire en cours "/rep1/rep2", que doit-on écrire ?

pour rappel, l'url de départ est du type :

Code:
www.mondomaine.com/rep1/rep2/?id=12

encore merci !
 
WRInaute occasionnel
en fait j'avais qq chose qui marchait avec :

RewriteRule ^(.+)/$ /index.php?rep=$1

mais je voudrais pouvroir ajouter un id en plus comme paramètre, de manière à ce que mes clients puissent se parrainer en atterissant sur n'importe quelle page.
 
WRInaute occasionnel
Je dirais :
Code:
RewriteRule ^/(.+)/$ /index.php?rep=$1 [R=301,QSA,L]
OU
Code:
RewriteRule ^(.+)/$ /index.php?rep=$1 [R=301,QSA,L]
A verifier.
 
WRInaute occasionnel
la ligne suivante marche à merveille :

Code:
RewriteRule ^(.+)/$ /index.php?rep=$1 [QSA,L]

Mais j'ai du enlever le 301 car sinon je me retrouvais avec l'adresse finale dans la barre d'url, comme une redirection classique, alors que je veux garder mon arborescence de répertoire.

samuel220093 : j'ai un problème avec cette solution car le caractère "?" ne passe pas quand je l'utilise dans la première partie de la ligne Rewriterule. Si je met un autre caractère ça passe, mais si je met "?", même avec un '\' pour l'échapper, ça ne fonctionne pas...

Merci à tous les deux en tous cas !!!!!
 
WRInaute discret
Hum il me semble que j'ai mis un "/" en trop :lol:

Mais comme ne ne connaissait la méthode de QSA que depuis quelques minutes :lol:

( Oui, magic corp. me l'a apris :P )
 

➡️ Offre MyRankingMetrics ⬅️

pré-audit SEO gratuit avec RM Tech (+ avis d'expert)
coaching offert aux clients (avec Olivier Duffez ou Fabien Faceries)

Voir les détails ici

coaching SEO
Discussions similaires
Haut