url rewriting pour newbie

WRInaute discret
quesiton comme mais utile, enfin je pense, pour newbie.

J'ai eu l'ocassion de lire qq tuto notamment celui de WRI.

lorsque j'ecris ma règle d'url rewriting, dois je dans chacune des pages pointer vers le fichier non rewriter ou celui rewriter ?

si l'on doit pointer vers une url rewriter, comment fait le serveur pour savoir quel est le fichier htaccess qui réecrit la règle ?

merci
 
WRInaute accro
Le fichier .htaccess, à priori il n'y en a qu'un dans lequel tu as écrit les règles...

Tu dois bien évidemment faire les liens vers les pages réécrites (foo/bar.html), et pas vers les pages à variables (index.php?foo=bar).
 
WRInaute discret
HawkEye a dit:
Le fichier .htaccess, à priori il n'y en a qu'un dans lequel tu as écrit les règles...

Tu dois bien évidemment faire les liens vers les pages réécrites (foo/bar.html), et pas vers les pages à variables (index.php?foo=bar).

tu dis qu'a priori il n'y a qu'un fichier htaccess contenant plusieurs règles.
tu parles par dossier, n'est ce pas ?

il y a toujours un problème que je me pose :
on a une url du type monsite.com/page=article&id=5
on veut la réecrire en monsite.com/article/5
(je sais qu'il est préférable de l'écrire sous la forme monsite.com/article-5.html mais c'est pour l'exemple)

ou va t'on placer le fichier htaccess qui va définir la règle ci dessus.
on ne peut pas le placer dans le repertoire article vu qu'il n'existe pas ...


donc comment faire ?
 
WRInaute accro
Avec un seul .htaccess à la racine du site, ça marche très bien tu sais ;)


PS: ../article/5 ou ../article-5.html donneront à peu de choses près le même résultat, ne te formalise pas sur les .html ;)
 
WRInaute passionné
Oki pour ne pas formalisé sur les .html mais il faut savoir que les moteurs de recherche n'aime pas trop le contenu en profondeur.
 
WRInaute discret
HawkEye a dit:
Avec un seul .htaccess à la racine du site, ça marche très bien tu sais ;)


PS: ../article/5 ou ../article-5.html donneront à peu de choses près le même résultat, ne te formalise pas sur les .html ;)

l'exemple de l'article n'était pas destinée à l'article mais a mon projet qui est un peu plus complexe.

je souhaiterais en fait créer des répertoire virtuels comme dans mon exemple .../article/5/

peux tu me dire si il y a un moyen de mettre le fichier htaccess ailleurs qu'à la racine pour résoudre mon problème.
 
WRInaute accro
Je n'ai jamais essayé, mais il me semble que oui.

Quoi qu'il en soit, tu peux très bien gérer tes urls /article/dir/redir/subdir/5,3.html#21 depuis la racine, ce n'est pas du tout un souci...

ie: tu as un "article 5, page 2" sur une uri "../article/5,2.html (j'invente), tu travailles avec:


Code:
RewriteRule ^/article/([0-9]+),([0-9]+).html$ articles.php?id=$1&page=$2 [L]

...mais rien ne t'empèche, toujours depuis la racine, de faire un truc du genre:

Code:
RewriteRule ^/article/([0-9]+),([0-9]+).html$ /bazar/brol/autre-rep/machin.php?id=$1&page=$2 [L]

C'est entièrement virtuel.


Si je comprends mal ta question, corrige-moi, mais je ne vois pas le souci en fait ;)
 
WRInaute discret
merci pour tes explications.

le fait est que je travaille actuellement en local.

saurais tu comment je peux configurer mon serveur en local pour qu'une fois que je le mette en ligne je n'ai pas de surprises ?

une réponse évidente serait de le mettre à la racine de mon serveur web (j'utilise wamp5). La problème c'est que je travaille avec plusieurs projets en parallèle. et de plus le site que je suis en train de créer contiendra des sous domaines.
 
Discussions similaires
Haut