2009-10-09 8 views
11

J'ai l'adresse suivante:Règle de réécriture d'Apache avec des paramètres?

http://domain.com/index.php?m=feedback&cSubject=My Subject 

Je veux avoir une règle de réécriture afin que les éléments suivants:

http://domain.com/feedback?Subject=My Subject 

cartes à l'adresse précédente. Heres ma règle à l'heure actuelle:

RewriteRule ^feedback?Subject=(.*)$ index.php?m=feedback&cSubject=$1 

Ne semble pas fonctionner tho! Des idées?

Répondre

14

Les chaînes de requête ne sont pas analysées par Apache Mod_Rewrite, mais il existe une solution de contournement. Essayez cette

RewriteRule ^feedback/?$ index.php?m=feedback&c%{QUERY_STRING} [NC,L] 
+1

A travaillé super merci! – James

+1

C'est ce qui me manquait pour mes requêtes de recherche dynamiques. Merci, Clops! –

+0

comment voulez-vous vous débarrasser du nécessaire?? 'À la fin? ça ne marche pas si je l'enlève juste – user151496

5

Vous pouvez utiliser la déclaration RewriteCond de faire exactement ce que vous voulez:

RewriteEngine On 

RewriteCond %{QUERY_STRING} Subject=(.*) 
RewriteRule ^feedback$ index.php?m=feedback&cSubject=%1 [L] 
0

Il semble y avoir un manque de = Clops réponse donner ..

RewriteRule ^feedback/?$ index.php?m=feedback&c=%{QUERY_STRING} [NC,L] 

. Au moins j'en ai besoin pour le faire fonctionner.

Questions connexes