Besoin d'un coup de pouce ! [resolu]

Nouveau WRInaute
Bonjour,
Je souhaite faire une modification concernant mon htaccess :

Mon site comprends plusieurs pages (accueil, particuliers, tarifs, livre d'or)

j'ai actuellement ceci :

RewriteRule ^index.html /index.php [L]
RewriteRule ^index-([0-9]+).html /index.php?page=std&id=$1 [L]
RewriteRule ^contact.html /index.php?page=contact [L]

donc toutes les pages sont au format site/index-1.html, site/index-2.html, etc ...

Je souhaiterai que index-1 se transforme en accueil.html, index-2 soit particuliers.html, etc ....

J'ai essayé ceci : RewriteRule ^Accueil.html /index-1.html [L] mais ca ne marche pas :(

Je précise que les noms de pages sont dans une base sql (une table 'page')

Merci d'avance, je suis un peu perdue !

Solenne
 
Nouveau WRInaute
YoyoS a dit:
Code:
RewriteRule ^/(.*).html  /index.php?page=$1 [L]

Et un truc du genre ?

Non ca ne passe tjrs pas !

Je ne sais vraiment pas comment proceder :(

j'ai testé avec ta proposition :

RewriteEngine on
RewriteRule ^index.html /index.php [L]
RewriteRule ^index-([0-9]+).html /index.php?page=std&id=$1 [L]
RewriteRule ^/(.*).html /index.php?page=$1 [L]
RewriteRule ^contact.html /index.php?page=contact [L]

je précise que pour la page contact, il n'y a pas de pb ! c'est juste pour les autres pages sous forme index-1, index-2, etc ... dont les noms sont stockés dans la base sql

Solenne
 
WRInaute accro
Essaie des variantes aussi:

Code:
RewriteRule ^(.*).html  /index.php?page=$1 [L]


Code:
RewriteRule ^/(.*)\.html  /index.php?page=$1 [L]

Code:
RewriteRule ^(.*)\.html  /index.php?page=$1 [L]
 
WRInaute discret
Bonjour,

Si j'ai bien compris, ce que tu aimerai avoir c'est :
- que la page [accueil.html] pointe vers [index.php?page=accueil]
ET
- que si on tape [index-1.html] on soit redirigé (en redirection 301) vers [accueil.html] (car les moteurs ont dû deja referencer tes pages avec ces url)

donc il faut je pense y aller en 2 temps. je ferai comme ça a ta place :
Code:
# redirection 301 pour le referencement
RewriteRule   ^index-1\.html$ /accueil.html [R=301,L]

# re ecriture des url
RewriteRule ^accueil.html /index.php?page=std&id=1 [L]

là bien sur c'est du statique.. mais c'est le principe que j'utiliserai
 
Nouveau WRInaute
Un énorme merci a vous deux, cela marche !!!!

Vous êtes des as !

Heureusement qu'il y a des gens comme vous, car ce n'est pas si facile de tout comprendre !!
 
Discussions similaires
Haut