Comment utiliser mod_rewrite pour changer le chemin d'accès et le nom de fichier d'une URL

StackOverflow https://stackoverflow.com/questions/105308

  •  01-07-2019
  •  | 
  •  

Question

Je veux prendre l'URL: http://www.mydomain.com/signup-12345

Et réellement leur donner: http://www.mydomain.com/signup/?aff=12345

Je n'ai AUCUN historique avec mod_rewrite, HELP!

Était-ce utile?

La solution

J'ai trouvé qu'il était relativement difficile de savoir comment faire l'inverse de ce que vous faites, dans lequel vous devez rechercher la valeur d'une partie de la chaîne de requête.

Ainsi, par exemple:

Si vous souhaitez réécrire l'URL: http://www.example.com/signup- old - script. asp ? aff = 12345

à: http://www.example.com/signup- nouveau - script. php ? affID = 12345

vous pouvez utiliser:

RewriteCond %{query_string}& ^aff=((.+&)|&)$   
RewriteRule ^/signup-old-script.asp$    /signup-new-script.php?affID=%2 [L,R]

Notez le signe % dans la règle de réécriture au lieu du signe $ .

Je devais le faire pour pouvoir utiliser les anciennes cartes Flash sur un nouveau site contenant des liens vers ".cfm". fichiers avec un identifiant dans la chaîne de requête.

Autres conseils

Essayez ceci:

RewriteRule ^ / signup - (\ d +) / $ / signup /? aff = $ 1 [I]

Pour autant que je sache,

avec cet indicateur, le RewriteCond est ignoré. - pour "Ignorer la casse" - de IsapiRewrite version 2

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top