Aller au contenu

Sujets conseillés

Posté

Bonjour,

Même une simple redirection, je n'y arrive pas :(

J'aimerais que l'URL "ville-paris-75000.php" soit retranscrise en "ville.php?ville=paris&cp=75000"

Voici la ligne de htaccess :

RewriteRule ^ville-([^a-zA-Z]+)-([0-9]+)\.php$ /ville.php?ville=$1&cp=$2 [L]

Merci d'avance

Portekoi

Re,

J'ai trouvé : il fallait simplement mettre cette ligne au dessus de ma gestion de 404 et non en dessous...

Portekoi

Correction, il faut enlever le ^ :

RewriteRule ^ville-([a-zA-Z]+)-([0-9]+)\.php$ /ville.php?ville=$1&cp=$2 [L]
Posté

Oui parce que le ^ à l'endroit où tu le mettais représentait une négation donc [^a-zA-Z] signifie tout sauf les lettres de a à z.

Pour info, tu pourrais écrire ta règle :

RewriteRule ^ville-([a-z]+)-([0-9]+)\.php$ /ville.php?ville=$1&cp=$2 [NC,L]

en utilisant le flag NC (pour No Case) rendant l'expression insensible à la casse.

Posté

Re,

Merci pour cette correction.

Que dois je ajouter dans mon htaccess pour qu'il ne soit pas sensible à la casse sur toutes URL?

Par exemple : "test.Php" me renvoie une 404 alors que la page est "test.php"

Merci :)

Posté

Le flag NC que j'ai mis dans l'exemple doit jouer dans ce cas...

Posté

C'est vrai qu'il manque les numéros :lol: Cela ne colle donc pas avec la règle initiale !

Posté

En faites, je ne sais pas comment lui dire de ne pas prendre en compte la casse pour toutes les URL saisies...

Désolé, c'est une autre question mais qui rejoins le rewriting :)

Posté

Il suffit d'utiliser le flag NC (noCase) en fin de chaque règle de réécriture, par exemple [NC,L], [NC,QSA,L] ou [R=301,NC,L]

Veuillez vous connecter pour commenter

Vous pourrez laisser un commentaire après vous êtes connecté.



Connectez-vous maintenant
×
×
  • Créer...