Aller au contenu

url rewrite ... encore !


Sujets conseillés

Bonjour à vous tous !

j'ai cherché sur le net et sur le hub pour tenter de trouver une réponse à ma question mais probablement que je n'utilise pas les bons mots pour ma recherche alors peut-être quelqu'un d'ici pourrait me venir en aide..

j'essais de faire la chose suivante et très simple:

je veux rediriger un utilisateur qui entre l'adresse suivant:

http://www.test.com/a/b/c/?query=(des mots quelconques)

Vers

http://www.test.com/script.php?mot=(des mots quelconques)

Comment puis-je m'y prendre ?

Merci à tous !

Lien vers le commentaire
Partager sur d’autres sites

Salut Annweb,

Ce n'est pas "simple", en ce sens que tu veux modifier le query string et l'URL.

Dans une réécriture classique, on ne réécrit pas le query string (ce qui vient après le ?), et on se limite à l'URL.

Je pense qu'avant de te lancer dans ce type de réécriture, tu devrais nous donner des URLs actuelles, la forme que tu voudrais voir réécrite et bien te poser la question: "j'y gagnerai quoi?"

Parce qu'à lecture de ton post, j'aurais tendance à répondre "Rien" ;)

Dan

Lien vers le commentaire
Partager sur d’autres sites

  • 2 semaines plus tard...

Bonjour,

j'aimerais moi aussi réaliser une redirection du même genre. En pratique, j'aimerais que:

- si l'internaute écrit:

h**p://www.domain.tld/test-1234.html

- il voit:

h**p://www.domain.tld/test.php?a=1234

De plus

- si l'internaute écrit:

h**p://www.domain.tld/test-1234.html?b=5678

- il voit:

h**p://www.domain.tld/test.php?a=1234&b=5678

Merci d'avance pour vos suggestions.

Modifié par XopheWH
Lien vers le commentaire
Partager sur d’autres sites

Bonjour,

j'aimerais moi aussi réaliser une redirection du même genre. En pratique, j'aimerais que:

- si l'internaute écrit:

h**p://www.domain.tld/test-1234.html

- il voit:

h**p://www.domain.tld/test.php?a=1234

De plus

- si l'internaute écrit:

h**p://www.domain.tld/test-1234.html?b=5678

- il voit:

h**p://www.domain.tld/test.php?a=1234&b=5678

Merci d'avance pour vos suggestions.

<{POST_SNAPBACK}>

Pour ceci, tu devrais t'intéresser aux articles du Hub, notamment ceux parlant d'url rewriting. ils sont présents ici :

http://www.webmaster-hub.com/publication/article5.html et

http://www.webmaster-hub.com/publication/article15.html

Si tu ne comprends pas quelque chose, n'hésites pas à faire appel au forum ;)

Anonymus.

Lien vers le commentaire
Partager sur d’autres sites

Salut XopheWH,

C'est vraiment simple, une seule règle ;)

RewriteEngine On
RewriteRule test-([0-9]+)\.html  test.php?a=$1 [QSA,L]

Le flag QSA (Query string append) s'occupera tout seul de la variable b du deuxième exemple ;)

Lien vers le commentaire
Partager sur d’autres sites

Bonjour, bon je suis hanté,

J'utilise une règle de reécriture qui fonctionne très bien trouvé sur webrankinfo pour que mes visiteurs soient toujours sur domaine.truc sans les www, donc j'en déduis que RewriteRule fonctionne sur mon hébergement ... seulement voila, je veux récrire des pages très simple index.php?p=mapage en mapage.html, donc rien de compliqué mais ça ne marche pas :(

RewriteRule page_([a-z]+)\.html index.php?p=$1 [L]

Merci d'avance, Yann

Lien vers le commentaire
Partager sur d’autres sites

Bonjour, bon je suis hanté,

J'utilise une règle de reécriture qui fonctionne très bien trouvé sur webrankinfo pour que mes visiteurs soient toujours sur domaine.truc sans les www, donc j'en déduis que RewriteRule fonctionne sur mon hébergement ... seulement voila, je veux récrire des pages très simple index.php?p=mapage en mapage.html, donc rien de compliqué mais ça ne marche pas :(

RewriteRule page_([a-z]+)\.html index.php?p=$1 [L]

Merci d'avance, Yann

Salyt Yann,

Ta règle n'accepte que les caractères minuscules après page_

Es-tu certain que ce soit ce que tu transmets ?

Sinon, plus génériquement, tu peux essayer

RewriteRule page_(.+)\.html index.php?p=$1 [L]

Cela réécrira toujours le texte qui suit page_

Dan

Lien vers le commentaire
Partager sur d’autres sites

Ta règle n'accepte que les caractères minuscules après page_

Heu, là je crois que c'est moi qui n'ai pas tout compris, je précise mon but car je suis peut etre completement à coté de la plaque.

Je veux obtenir des pages en html, c'est à dire que dans la barre d'adresse j'ai htt......./mapage.html au lieu de htt..../index.php?p=mapage.

si c'est bien la procédure à suivre, ta proposition ne fonctionne pas plus, sinon désolé, je n'ai rien compris au rewriting :D

Merci

Lien vers le commentaire
Partager sur d’autres sites

Selon ton premier exemple, la règle que je t'ai donnée reconvertira page_toto.html en index.php?p=toto

Par contre, ce n'est qu'une réécriture. Il faut que ton programme génère les liens sous la forme page_toto.html parce que la réécriture ne le fera pas automatiquement.

Je pense que ta mauvaise compréhension de l'URL rewriting vient de là ;)

Dan

Lien vers le commentaire
Partager sur d’autres sites

Veuillez vous connecter pour commenter

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



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