Aller au contenu

Sujets conseillés

Posté

Bonjour,

J'essaye en vain d'effectuer quelques regles de réécritures pour un site utilisant un CMS.

Une fois que les regles de réécritures fonctionneront, je pourrai alors effectuer les redirection des anciennes pages vers les nouvelles réécrites.

Le souci est que ca fonctionne pas vraiment comme je veux... :(

#redirection de la page pas sexy, vers /contact
#page de base /index.php?contact=contact, réécrite normalement /contact

RedirectPermanent index.php?contact=contact /contact

##################################################

RewriteEngine on

#réécriture des urls des categories qui sont sous la forme :
#
#/?001/Nos-produits
#
#donc /?(numero de la categorie)/(titre de la categorie)
#
#etant donné que je n'ai pas besoin du numero, la variable $1 est pour le titre, aucune souci si la variable $2 est avant?
#

RewriteRule ^(-[a-zA-Z0-9-]*+)/$ /?$2/&$1 [L]

#on devrait obtenir /(titre de la categorie)

###################################################

#réécriture des urls des articles qui sont la forme :
#
#/index.php?6-sommaire-liste-de-nos-produits
#
#donc /index.php?(numero article)-(titre avec tiret de l'article)
#

RewriteRule ^(-[a-zA-Z0-9-]*+)-([0-9]+)\.htm$ /?index.php?$2-&$1 [L]

#on devrait obtenir /(titre avec tiret de l'article)-(numero article).htm

Je n'ai pas mis toutes les redirections (il y en a une vingtaine) car elles reprennent le meme schema.

Est ce que quelqu'un pourrait m'expliquer le souci...

merci :)

Posté

Ne faut il pas tout simplement pas modifier le format des url dans le dit CMS :sick: ? ça doit ce trouver dans gestion/config globale/SEO/URLs explicites (SEF)

Posté

Qui a fait cette règle ?

RewriteRule ^(-[a-zA-Z0-9-]*+)/$ /?$2/&$1 [L]

parce que je me demande bien où il va chercher le $2 (et accessoirement à quoi correspond le *+) :?:

Le souci est que ca fonctionne pas vraiment comme je veux...

Ca ne me surprend pas vraiment :P

Posté

Ben ces regles viennent de moi... je débute la dedans, donc je galere.

La variable $2 correspondait au numero de la rubrique, mais je ne m'en servait aps dans la réécriture.

le *° j'ai combiné ce que j'ai trouvé sur le net, -[]* pour avoir droit à autant de caractere,chiffres, tirets souhaités, le plus était pour les chiffres il me semble...

Posté (modifié)

Quel est le cms ? je sais pas pourquoi je pensais que c'était Joomla ... Si c'est le cas il y a déjà un htaccess.txt à renommer en .htaccess et activer l'option (voir plus haut)

Modifié par Ifmy
Posté (modifié)

Oki oki ^^ reprenons dans ce cas.

- Définir les url type à pluxml

- Définir une reécriture pour chaque type d'url

- Puis RewriteRuleter :P

http://www.webmaster-hub.com/publication/M...riture-des.html

- puis tu envoies le tout et pries le dieu de la reécriture d'url (aka Dan) :P

Modifié par Ifmy
Posté

Donc faut que je parvienne a déterminer les règles rewrite qui vont me transformer :

/?001/Nos-produits

/index.php?6-sommaire-liste-de-nos-produits

en

/Nos-produits (je ne sais pas si c'est possible de mettre une condition avec un htaccess par exemple, ne pas mettre de mots inférieur à 3 lettres, ce qui donnerait dans ce cas /produits )

/6-sommaire-liste-de-nos-produits ( mieux encore si on vire les mots inférieurs à 3 lettres)

Par contre j'ai un souci avec le mod rewrite, il ne fonctionne que lorsqu'un domaine est spécifié? car usr le dédié que je loue, j'ai évidemment des domaines spécifiques, mais la ou je teste tout ça c'est plutôt ksXXXX.com/ñom_fictif/ et la ça ne fonctionne pas :(

Merci de ton aide en tout cas :)

Posté

Lorsque tu utilises une URL sous la forme ksxxx.com/~login , cela ne fonctionnera pas correctement parce que le DocumentRoot n'est pas défini comme il le serait sur le véritable nom de domaine.

Posté

ah, donc voila déja un souci d'enlever.

Pour ce qui est de mes interrogations niveau "conditions" avec le htaccess, c'est possible? Ne pas prendre les mots inférieurs à 3 caracteres?

Veuillez vous connecter pour commenter

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



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