J'ai posé une question identique dernièrement sans avoir eu de réponse (hélas), ce qui m'a obligé à faire fumer mes neurones...
Voici une solution qui fonctionne (en partie issue d'un fil de denisb)
exemple sur mapage.html
1 - dans le squelette, d'abord générer l'URL propre
1a - forme simple :
lieu de href="#URL_PAGE{mapage}"
mettre : href="[(#URL_SITE_SPIP)]/mapage"
1b - en passant un paramètre à l'URL (ici un id_mot)
mettre : href="[(#URL_SITE_SPIP)]/mapage#ID_MOT"
2- dans le htaccess
créer la règle de réécriture :
1a - forme simple :
RewriteRule ^(mapage)(\.html)?$ spip.php?page=$1 [QSA,L]
ou
RewriteRule ^mapage(\.html)?$ spip.php?page=mapage [QSA,L]
1b - en passant un paramètre (ici un nombre -id_mot- dans la variable $1)
RewriteRule ^mapage([0-9]+)(\.html)?$ spip.php?page=mapage&id_mot=$1 [QSA,L]
Si quelqu'un a mieux, merci beaucoup de le signaler.
A+
JPH
Gérard OKONO a écrit :
Bonsoir,
J’ai activé les url propre sur mon site et je voudrais que les url de type #URL_PAGE{page} se transforment en page.html.
Quelle règle dois-je écrire dans mon .htaccess pour que page.html soit
redirigé vers spip.php ?page=page ?