L'URL Rewriting expliqué aux débutants

Olivier Duffez (admin)
Membre du personnel
Sans chercher à vexer les "débutants" qui découvrent les techniques d'URL Rewriting, j'ai écrit un petit article visant à présenter brièvement à quoi ça sert, quel est son principe et comment l'utiliser.
Je suis ouvert à vos remarques afin de l'améliorer. J'espère qu'il répondra aux attentes que certains m'ont exprimées par email.

https://www.webrankinfo.com/analyses/aut ... utants.php
 
WRInaute discret
Merci grand chef pour ce complément d'informations concernat l'URL Rewriting...

Mais j'ai un doute... Voilà tu dis :
Il faut donc veiller à changer tous les liens à l'intérieur de son site pour qu'ils soient tous au nouveau format.

Je pensais que le fait de mettre un .htaccess suffisait à transformer au niveau serveur les URL dynamiques en URL propres... Et là j'ai comme l'impression que tu veux dire que même avec un .htaccess il faut réécrire mes URL dans les codes de mes pages PHP.

Soit que je ne comprend rien ou alors c'est la fatigue qui vient de me frapper...

Bonne nuit... à demain :wink:
 
WRInaute impliqué
Oui, il faut bien modifier ses pages PHP pour y mettre la nouvelle extension (html...) sinon ca ne marchera pas, Apache ne réécrit pas à la voler les URLs :)
 
Olivier Duffez (admin)
Membre du personnel
Je crois que c'est LA grosse erreur que tout le monde fait... C'est d'ailleurs principalement pour ça que j'ai écrit cet article, car on voyait trop souvent dans le forum des gens ne pas comprendre que ça ne marche pas...
 
WRInaute discret
Donc dans mon cas pour une URL du type :
h**p://www.monsite.com/links/?action=voir&id=35
qui serait réécrite par Rewriting en h**p://www.monsite.com/links-voir-35.html
je devrais changer mes règles de formation de mes URLs dans mes codes sources PHP.

Houlà!!! C'est plus compliqué que je ne le pensais ce Rewriting.

Car si je comprens bien un moteur va trouver grace au .htaccess une URL de la forme h**p://www.monsite.com/links-voir-35.html et l'indexé, mais par la suite (si je ne change rien d'en mes codes sources PHP) un visiteur qui cliquera sur cette URL n'arrivera pas à la page h**p://www.monsite.com/links/?action=voir&id=35

Pour moi je pensais que le rewriting permettait juste d'indexer des URLs à variables multiples sous une forme html, et qu'une fois que le visiteur entrait sur le site par une adresse html il pouvait continuer sa visite grace aux liens internes qui eux restent sous la forme h**p.....links/?var=x&var=y

Je me trompe alors!!!
 
Nouveau WRInaute
Nitou a dit:
Oui, il faut bien modifier ses pages PHP pour y mettre la nouvelle extension (html...) sinon ca ne marchera pas, Apache ne réécrit pas à la voler les URLs :)

Pourtant dans l'article de votre site il est écrit:

Une des fonctions les plus puissantes permises par le fichier .htaccess (cf. article sur le fichier .htaccess) est la réécriture "à la volée" des URL.

La vérité est ailleurs...
 
WRInaute passionné
Alphen a dit:
Pourtant dans l'article de votre site il est écrit:

Une des fonctions les plus puissantes permises par le fichier .htaccess (cf. article sur le fichier .htaccess) est la réécriture "à la volée" des URL.

La vérité est ailleurs...
C'est vrai qu'elle est ailleurs... c'est une question de compréhension :wink:

Apache réécrit bien "à la volée" une URL de type article-12.html en article.php?id_article=12, pour autant qu'on lui ait donné instruction de le faire à l'aide d'une règle dans le fichier .htaccess (ou httpd.conf).

Ce qu'Apache ne fait pas, c'est changer la source de vos pages. , et c'est heureux !
Si dans celle-ci il reste des liens article.php?id_article=12 , ils ne seront pas changés.
C'est au concepteur du site et/ou au programmeur d'application de s'assurer que toutes les urls seront de la forme article-xx.html en modifiant ses applications.

Apache sait donc bien réécrire à la volée les URLs qu'on lui présente (si règle adéquate il y a) :wink:

Dan
 
WRInaute impliqué
WebRankInfo a dit:
Je suis ouvert à vos remarques afin de l'améliorer. J'espère qu'il répondra aux attentes que certains m'ont exprimées par email.

MOUARF..!!!!!! c'est génial... :))

Merci à wri pour le support et à DAN pour ce COURS SPLENDIDE..!!!

Moi qui cherchais un stage d'été .. :)

MERCI A TOUS.....

ET LONGUE VIE A WRI!!!!!!!!!
 
WRInaute discret
BZHcool a dit:
Je pensais que le fait de mettre un .htaccess suffisait à transformer au niveau serveur les URL dynamiques en URL propres... Et là j'ai comme l'impression que tu veux dire que même avec un .htaccess il faut réécrire mes URL dans les codes de mes pages PHP

Comme cela arrive trop souvent, tu prend la question à l'inverse. Ce n'est pas apache ou ton htaccess qui cré des liens html mais toi qui les fait (dans ton code PHP donc) et apache qui interprete en php.

Pour résumer, contrairement à la logique de tous les débutants, on ne transforme pas du PHP en HTML mais de fausses pages HTML en vrai pages PHP (je parle physiquement la).

Euh, c po clair ??? :lol:
 
WRInaute discret
Merci pour cette réponse...

Je crois avoir compris le fin fond de cette URL Rewriting... Et oui comme un bon débutant je prenais le problème à l'envers...

Je vais donc étudier le chose... mais pour le moment je viens de modifier mes urls à 3 variables en urls à 2 variables... J'attends la prochaine mise à jour (en juillet maintenant)

Merci à toi Tchinkatchuk pour cette réponse et à WebRankInfo pour avoir ouvert ce Post qui aura été plus que révélateur pour Moi
 
Nouveau WRInaute
Yes, webrankinfo, tu devrais rajouter un lien vers ce post sur la doc.

C cool, j'ai tout compris, plus qu'a savoir si je vais savoir le faire.
 
WRInaute discret
Je voulais simplement dire merci pour les articles et les explications...
J'ai pu faire du rewriting propre et sans trop me prendre la tête... un grand merci :D
 
WRInaute discret
Bonjour,

Article intéressant mais je me demande pourquoi tous les autres articles sur le sujet sont marqués comme Cet article n'est plus disponible.. C'est le cas pour les deux autres articles sur la réécriture d'URL et les fichiers .htaccess. C'est quand même bizarre de nous conseiller des articles non disponibles :).

Félicitations à l'auteur pour cet article qui présente succinctement l'intérêt de la réécriture d'URL, URL rewriting en bon anglais :).

JM.
 
Nouveau WRInaute
L'url rewriting toujours d'actualité?

goa103 a dit:
Bonjour,

Article intéressant mais je me demande pourquoi tous les autres articles sur le sujet sont marqués comme Cet article n'est plus disponible.. C'est le cas pour les deux autres articles sur la réécriture d'URL et les fichiers .htaccess. C'est quand même bizarre de nous conseiller des articles non disponibles :).

Félicitations à l'auteur pour cet article qui présente succinctement l'intérêt de la réécriture d'URL, URL rewriting en bon anglais :).

JM.

L'URL Rewriting (mis à part pour le PHPBB) est-il encore d'actualité car de nombreux posts datent de 2003 ou 2004? J'ai un site dynamique et du PHPsessid et il s'indexe correctement avec Google?
Bravo pour les articles, les outils et l'intérêt du forum.
 
WRInaute discret
Re: L'url rewriting toujours d'actualité?

jclaude a dit:
L'URL Rewriting (mis à part pour le PHPBB) est-il encore d'actualité car de nombreux posts datent de 2003 ou 2004? J'ai un site dynamique et du PHPsessid et il s'indexe correctement avec Google?
Bravo pour les articles, les outils et l'intérêt du forum.

La réécriture d'URL te permettrait de cacher l'identifiant de session ? Je ne l'utilise que dans un soucis d'esthétique. Par exemple l'URL de ce sujet est https://www.webrankinfo.com/forum/t/lurl-rewriting-explique-aux-debutants.3460/ et réécrite elle pourrait donner : -https://www.webrankinfo.com/forum/sujet/3460. C'est un grand débat mais certains considèrent que des informations comme _ ou l'extension .htm n'ont rien à faire dans un URL. Sans compter que sujet veut dire quelque chose pour tout le monde alors que viewtopic ne signifie plus grand chose sur un site francophone.

Donc même si on a avancé certaines théories sur la réécriture d'URLs beaucoup ne s'en servent que pour proposer des URLs plus simples et explicites aux internautes.

Sinon le fait qu'un site soit dynamique ou non ne gêne en rien les moteurs puisqu'ils récupèrent du HTML au final. Par contre un site en JavaScript ou Flash reste plus problématique à indexer.
 
WRInaute discret
c'est clair je suis dans le même cas donc d'apres ce que j'ai compris faut mettre betement quelque chose dans un htacces puis changer tout ses liens ... faut mettre quoi dans le htacces ??? :roll:
aussi une tite question , si je fait un liens par exemple vers "monsite.com/page_sujet_35.htm " et puis ke je change via dreamwaver ou quoi la page php , la page htm sera changée aussi ?

Merci de vos reponse !

Arn :roll:
 
WRInaute occasionnel
olivier, sympa ton article pour les debutant, mais envoyé tout le monde sur un forum, source de perde de bcp de gens (j'ai perdu ma mere, pas vous?) je regrette les quelque page clair et bourrer d'exemple qui parlais concraitement sur rewriterules ...

la ca deviens clair comme du petrole et on doit chercher ailleurs .. pas cool!
 
Nouveau WRInaute
Re: L'url rewriting toujours d'actualité?

jclaude a dit:
L'URL Rewriting (mis à part pour le PHPBB) est-il encore d'actualité car de nombreux posts datent de 2003 ou 2004? J'ai un site dynamique et du PHPsessid et il s'indexe correctement avec Google?
Bravo pour les articles, les outils et l'intérêt du forum.

Si c'est le cas, ça veut dire que si je voulais indexer mon site qui est un nuked klan, je n'aurais plus besoin de faire de l'URL Rewriting ? même si c'est plus compliqué pour les utilisateurs ?

ça m'arrangerait car pour modifier mes pages ça va être dur étant donné que c'est pas moi qui les ai codé, d'autant plus que je ne trouve pas d'explications approfondies sur l'URL Rewriting (mais je n'ai pas encore beaucoup cherché) :p

edit : je me répond tout seul, puisqu'ayant cherché des termes sur cette page, je la retrouve sans problème sur google :)
 
WRInaute discret
Bonjour à tous !

Une petite question que beaucoup de monde doit se poser :

Si mon adresse h**p://www.monsite.com/catalogue.php?cat=25&art=68&SSID=b26fy65g4654df89f79d8f47 devient h**p://www.monsite.com/catalogue_25_69.html, est-ce que je peux récupérer mes variable $SSID, $cat et $art dans ma page (pour les afficher par exemple) ?

Merci d'avance
 
Discussions similaires
Haut