annweb Posté 30 Avril 2005 Posté 30 Avril 2005 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 !
Dan Posté 1 Mai 2005 Posté 1 Mai 2005 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
XopheWH Posté 14 Mai 2005 Posté 14 Mai 2005 (modifié) 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é 14 Mai 2005 par XopheWH
Anonymus Posté 16 Mai 2005 Posté 16 Mai 2005 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.
Dan Posté 16 Mai 2005 Posté 16 Mai 2005 Salut XopheWH, C'est vraiment simple, une seule règle RewriteEngine OnRewriteRule 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
XopheWH Posté 16 Mai 2005 Posté 16 Mai 2005 Effectivement, merci beaucoup. Je crois que je vais me plonger un peu plus dans la doc à l'avenir, je ne connaissais pas [QSA]... Merci.
YannCo Posté 16 Mai 2005 Posté 16 Mai 2005 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
Dan Posté 16 Mai 2005 Posté 16 Mai 2005 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
YannCo Posté 16 Mai 2005 Posté 16 Mai 2005 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 Merci
Dan Posté 16 Mai 2005 Posté 16 Mai 2005 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
YannCo Posté 16 Mai 2005 Posté 16 Mai 2005 Ok, merci bon ... ben je m'y intéresserai un peu plus tard, c'était surtout par curiosité
Sujets conseillés
Veuillez vous connecter pour commenter
Vous pourrez laisser un commentaire après vous êtes connecté.
Connectez-vous maintenant