Problème de réécriture [RESOLU]

  • Auteur de la discussion Auteur de la discussion pcamliti
  • Date de début Date de début
WRInaute impliqué
Bonjour,

Je cherche à réécrire cette URL :
/definitions/definitions.php?lettre=B

en

Definitions-Lexique-Glossaire-Lettre-B.html

j'ai testé ceci mais sans résultat
RewriteRule Definitions-Lexique-Glossaire-Lettre-(.+)-([^\-]+)\.html$ /definitions/definitions.php?url=$1 [QSA,L]

Pouvez vous m'aider ?
Merci d'avance
 
WRInaute impliqué
Il vaut mieux ouvrir une nouvelle discussion quand on change de sujet a mon avis.

Mais bon, puisqu'on est là, il me semble que tu as un tiret de trop dans ta partie gauche. Essaie ça:

Code:
RewriteRule Definitions-Lexique-Glossaire-Lettre-([^\-]+)\.html$ /definitions/definitions.php?url=$1 [L]

ne met QSA que si tu passe des paramètres a ton URL en html.
 
WRInaute impliqué
J'ai testé

RewriteRule Definitions-Lexique-Glossaire-Lettre-([a-z]+)\.html$ /definitions/definitions.php?url=$1 [L]

RewriteRule Definitions-Lexique-Glossaire-Lettre-([a-z]+)\.html$ /definitions/definitions.php?lettre=$1 [L]

RewriteRule /definitions/Definitions-Lexique-Glossaire-Lettre-([a-z]*)\.html$ /definitions/definitions.php?url=$1 [L]

RewriteRule /definitions/Definitions-Lexique-Glossaire-Lettre-([a-z]*)\.html$ /definitions/definitions.php?lettre=$1 [L]

mais toujours pas de résultat quelqu'un a une idée ?
 
WRInaute passionné
il faut que la règle soit dans un .htaccess dans le répertoire /definitions pour que ca marche. Sinon c'est la troisième règle qu'il faut utiliser (sans le premier / après RewriteRule)
 
WRInaute impliqué
J'ai testé les dans le dossier /definitions

RewriteEngine on
RewriteRule definitions/Definitions-Lexique-Glossaire-Lettre-([a-z]*)\.html$ /definitions/definitions.php?url=$1 [L]

et

RewriteEngine on
RewriteRule /definitions/Definitions-Lexique-Glossaire-Lettre-([a-z]*)\.html$ /definitions/definitions.php?url=$1 [L]

et à la racine idem
Sans résultat ?
 
WRInaute impliqué
Est tu sûr que la réécriture marche en général?

As tu fais le test du tutoriel disponible sur wri?
 
WRInaute impliqué
La réécriture fonctionne ! j'ai un htacess comprenant des réécritures... et oui j'ai testé les tuto de WRI...
Je ne comprends pas d'ou viens mon problème ? La plateforme ONline à été modifiée... peut être est-ce le souci...

Je vais faire le tour de la question. Autrement la réécriture de l'url doit faire apparaitre

?url= ... à la fin ?

Ai-je bien composé ma réécriture ?
 
WRInaute impliqué
Peux tu donner un URL complète et la réécriture que tu veux? Par exemple

-http://www.ndd.com/Definitions-Lexique-Glossaire-Lettre-B.html

-http://www.ndd.com/definitions/definitions.php?lettre=B

Par ailleurs, utiliser des majuscules dans les URL ne me semble pas une bonne idée.
 
WRInaute impliqué
Oui c'est exactement ce que je souhaite faire, passer de :

-http://www.ndd.com/definitions/definitions.php?lettre=B

à une réécriture donnant :

-http://www.ndd.com/definitions-lexique-glossaire-Lettre-B.html
ou
-http://www.ndd.com/definitions/lexique-glossaire-Lettre-B.html

Est-ce possible ?
 
WRInaute impliqué
Met ceci dans un .htaccess à la racine de ton site
Code:
Options +FollowSymLinks*
RewriteEngine on

RewriteRule definitions-lexique-glossaire-lettre-([^\-]+)\.html$ /definitions/definitions.php?lettre=$1 [L,R=301]

et rien d'autre.

Normalement, si tu entre

Code:
http://www.ndd.com/definitions-lexique-glossaire-lettre-B.html
alors tu devrais etre redirigé vers la page:

Code:
http://www.ndd.com/definitions/definitions.php?lettre=B

Attention à la casse (pas de majuscules au début des mots) car il me semble que tu en met un peu au petit bonheur la chance...

Si l'adresse dans la barre d'adresse de ton navigateur change comme indiqué ci dessus, alors c'est bon. Tu n'as plus qu'à enlever le R=301 pour rendre la réécriture transparente pour les visiteurs.

S'il se passe autre chose, décris le le plus précisemment possible.
 
WRInaute impliqué
Merci Vap, ça fonctionne correctement !

Je n'avais pas saisi, qu'il fallait appeler l'URL réécrite et et non l'URL de base... l'on apprends tous les jours... surtout en DEV.

Merci encore pour votre aide. :wink:
 
Discussions similaires
Haut