Aller au contenu

Sujets conseillés

Posté

Bonjour,

Je viens de regarder les derniers topics mais je ne trouve rien pouvant m'aider.

Mon problème devrait être simple à solutionner pour quelqu'un se connaissant en htaccess je pense :smartass:

J'aimerais que toutes les adresses de type http://www.domaine.com/xxx soit redirigées vers une page de type http://www.domaine.com/compte-xxx.html

Avec le code ci-après je suis arrivé à http://www.domaine.com/xxx/ vers http://www.domaine.com/compte-xxx.html

Mais comme vous le voyez, il faut mettre un / juste après xxx or j'aimerais une solution sans.

RedirectMatch permanent /(.+)/$ http://www.domaine.com/compte-$1.html

L'idéal serait que http://www.domaine.com/xxx/ et http://www.domaine.com/xxx redirigent vers http://www.domaine.com/compte-xxx.html mais ma préférence va à la version sans / s'il doit n'y en avoir qu'une.

Merci d'avance :thumbsup:

Posté

Bonjour et bienvenue à bord !

Avec ta règle précédente tu es obligé de terminer par un / sinon tu redirigerais compte-xxx.html vers compte-xxx.html vers compte-xxx.html vers ..., jusqu'à l'erreur 500 du serveur ;)

Je te suggère de remplacer cette règle par ceci:

RewriteEngine on
RewriteRule compte-.*\.html - [L]
RewriteRule (.+) http://www.domaine.tld/$1 [R=301,L]

Mais tes documents xxx sont de quel type ? .html, .php ou sans extension ?

Tu veux TOUT rediriger, sauf compte-xxx.html ?

Posté

Je viens de résoudre le problème :thumbsup:

Voici la solution :

RewriteEngine on
RewriteRule ^([-_0-9a-z]+)[/]?$ /compte-$1.html [L,NC]

Cela fonctionne avec ou sans slash à la fin.

Merci à vous quand même et à bientot ;)

Veuillez vous connecter pour commenter

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



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