Aller au contenu

.htacces mod_rewriting


fredoogle

Sujets conseillés

Bonjour,

je suis nouveau sur ce forum 'lol' et j'ai déja un pb a résoudre au niveau du .htaccess

j'ai créer un fichier .htaccess dans le dossier web/ de mon site pour une réécriture

d'URL dynamique.

J'ai lu les infos du site a ce sujet, j'ai controlé dans PHPinfo que le mod_rewriting

était bien activé sur le serveur Apache.

Puis, j'ai fait le test du nexistepas.html --> trouve.html, ça marche.

Et, quand je prends l'étape de la réécriture plus rien néant :unsure:

voici mot pour mot ce que j'ai mis:

Options +FollowSymlinks
RewriteEngine on
RewriteRule ^article-([0-9]+)-([0-9]+)\.html$  article.php?numero=$1&page=$2  [L]

puis j'ai créé et envoyé par FTP un fichier vierge 'article.php' que j'appel ensuite

par http://www.monsite.com/article.php?numero=435&page=7

et la rien, il garde l'URL telle quelle :evil:

Peux-t-on me dire ce que je fais faux ??????

merci :)

Lien vers le commentaire
Partager sur d’autres sites

Salut Fredoogle, et bienvenue à bord du Hub ;)

Ton problème vient d'une mauvaise compréhension de la réécriture... mais celle-ci est très commune, rassures-toi. Tu prends le problème à l'envers ;)

En fait, la règle que tu donnes permet de changer une URL de la forme:

article-435-7.html en article.php?numero=435&page=7

et non l'inverse.

Il te reste à modifier les sources de tes scripts pour que les URLs soient générées sous la forme article-435-7.html au lieu de l'ancienne forme.

Cela te permet d'avoir des URLs à l'apparence statique, plus facilement indexables par les moteurs, mais ces URLs statiques seront converties par Apache en appel à ton script article.php avec les bonnes variables.

Tu peux vérifier que ta règle fonctionne en appellant la page article-435-7.html ... tu verras que c'est bien ta page dynamique qui est appellée ;)

Dan

Lien vers le commentaire
Partager sur d’autres sites

Merci Dan,

Mais cela veux dire que je dois changer ton mes liens

par exemple:

sur la page qui recence des articles je dois transformer mes url en

article-1.html

article-2.html

etc...

et en cliquant dessus il décompose l'url pour attribuer les variables à la page

c'est bien ça :blink:

Lien vers le commentaire
Partager sur d’autres sites

Tout à fait, mais dans ce cas, il te faut 2 règles de réécriture comme tu auras des liens avec et sans numéro de page (article-123.html et article-123-4.html)

RewriteRule ^article-([0-9]+)-([0-9]+)\.html$  article.php?numero=$1&page=$2  [L]
RewriteRule ^article-([0-9]+)\.html$  article.php?numero=$1  [L]

Dan

Lien vers le commentaire
Partager sur d’autres sites

Merci Dan j'ai testé CA MARCHE !!!  :D

Ah ? Parce que tu en doutais ? Pas moi ! :D

N'hésite pas à revenir poser tes questions... et pourquoi pas à distiller ta science fraichement acquise ;)

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...