Réécrire et OVH

WRInaute discret
Bonjour,

Après de nombreux essais et lectures de pages web sur le rewriting, je bloque... :(

Sur mon site, j'ai une page enregistrement_lmdt.php, et je souhaite la réécrire en enregistrement-membre.html. J'ai passé en vrac plusieurs solutions proposées sur le web, mais sans succès, la dernière en date :

Code:
RewriteEngine on
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule (.*) index.php?$1 [L]
RewriteRule ^enregistrement-membre.html$ /enregistrement_lmdt.php [L]

Sans succès... Je tombe sur une page 404.
Je précise aussi que je dispose d'un serveur dédié OVH, car il me semble que les .htaccess sont un peu tordus chez eux.


Merci par avance pour vos réponses :wink:
 
WRInaute passionné
Code:
RewriteRule ^enregistrement-membre.html$ /enregistrement_lmdt.php [L]
RewriteRule (.*) index.php?$1 [L]
Inversion des deux dernières lignes... sinon la deuxième réécriture ne sera jamais exécutée.

Tu as un serveur dédié Linux + Apache sans comprendre la base de l'écriture séquentielle? Curieux. :?:
 
WRInaute discret
En essayant d'inverser les deux lignes en question, je suis en 404 sur tout le site...

anemone-clown a dit:
Tu as un serveur dédié Linux + Apache sans comprendre la base de l'écriture séquentielle? Curieux. :?:

Probablement.
Je t'avoue ne pas avoir spécialement réfléchi à la question, je voulais un serveur avec de très belles performances et un espace disque conséquent, d'où ce choix à la base du projet. Après, il y a certainement de meilleures alternatives... :wink:
 
WRInaute discret
Et comme ça :
Code:
RewriteEngine on
RewriteBase /
RewriteRule ^enregistrement-membre.html$ /enregistrement_lmdt.php [L]
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule (.*) index.php?$1 [L]
 
WRInaute passionné
je dirais même pour faire propre de mettre un \ devant le point (sinon ca veut dire n'importe quel caractère)
Code:
RewriteEngine on
RewriteBase /
RewriteRule ^enregistrement-membre\.html$ /enregistrement_lmdt.php [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule (.*) index.php?$1 [L]
 
WRInaute discret
Merci à vous deux, c'était exactement ça !

Sauriez-vous me donner le pourquoi du comment les RewriteCond doivent venir après ?


Merci :wink:
 
WRInaute discret
Merci pour cette réponse.
Cependant, me vient une nouvelle question : pourquoi dans ce cas mes deux RewriteCond "bloquaient" les RewriteRule placés plus loin ?


Merci ;-)
 
WRInaute passionné
Ce que voulait dire Forty, et il a raison, c'est que seule la première règle rewriterule bénéficie des conditions créées par les rewritecond.

Mais dans ton premier message, la rewriterule (.*) indique "tous les caractères" : la seconde ne pouvait être exécutée.
 
Discussions similaires
Haut