Aller au contenu

Sujets conseillés

Posté

Salut à tous,

J'essaie de mettre en place de l'URL Rewriting sur mon site.

Voici une copie de mon .htaccess :

RewriteEngine on

RewriteRule main(-.+)-([^-]+)-([^-&]*)([^-]*)\.html main$1&$2=$3$4\.html [N]

RewriteRule main-([^-]+)-([^-]*)(.*)\.html main.php?$1=$2$3 [L]

RewriteRule ^(.*).html $1.php [L]

Et j'envoie donc ce genre d'URL :

http://127.0.0.1/monsite.com/videos/main-p...deos-cat-1.html

Malheureusement, j'ai une erreur 400, et je ne comprends pas pourquoi.

Voici la log du rewrite:

127.0.0.1 - - [07/Jun/2005:09:03:30 +0200] [127.0.0.1/sid#845918][rid#38b81a8/initial] (3) [per-dir d:/mes documents/01-perso/weblocal/monsite.com/public/www/videos/] applying pattern 'main(-.+)-([^-]+)-([^-&]*)([^-]*)\.html' to uri 'd:/mes documents/01-perso/weblocal/monsite.com/public/www//videos/main-page-videos-cat-1.html'

127.0.0.1 - - [07/Jun/2005:09:03:30 +0200] [127.0.0.1/sid#845918][rid#38b81a8/initial] (2) [per-dir d:/mes documents/01-perso/weblocal/monsite.com/public/www/videos/] rewrite d:/mes documents/01-perso/weblocal/monsite.com/public/www//videos/main-page-videos-cat-1.html -> main-page-videos&cat=1.html

127.0.0.1 - - [07/Jun/2005:09:03:30 +0200] [127.0.0.1/sid#845918][rid#38b81a8/initial] (3) [per-dir d:/mes documents/01-perso/weblocal/monsite.com/public/www/videos/] applying pattern 'main(-.+)-([^-]+)-([^-&]*)([^-]*)\.html' to uri 'main-page-videos&cat=1.html'

127.0.0.1 - - [07/Jun/2005:09:03:30 +0200] [127.0.0.1/sid#845918][rid#38b81a8/initial] (3) [per-dir d:/mes documents/01-perso/weblocal/monsite.com/public/www/videos/] applying pattern 'main-([^-]+)-([^-]*)(.*)\.html' to uri 'main-page-videos&cat=1.html'

127.0.0.1 - - [07/Jun/2005:09:03:30 +0200] [127.0.0.1/sid#845918][rid#38b81a8/initial] (2) [per-dir d:/mes documents/01-perso/weblocal/monsite.com/public/www/videos/] rewrite main-page-videos&cat=1.html -> main.php?page=videos&cat=1

127.0.0.1 - - [07/Jun/2005:09:03:30 +0200] [127.0.0.1/sid#845918][rid#38b81a8/initial] (3) split uri=main.php?page=videos&cat=1-> uri=main.php, args=page=videos&cat=1

Si quelqu'un saurais dépatouiller mon pbm, ça m'enleverais une grosse epine du pied....

A+

Posté

Je cherche à comprendre à quoi peut bien te servir la règle suivante:

RewriteRule ^(.*).html $1.php [L]

Pour faire de la réécriture récursive, tu as un article sur le Hub: La réécriture d'URLs récursive

Dan

Posté

Je vois que tu as pris les règles qui sont mentionnées dans l'article. ;)

RewriteEngine on
RewriteRule index(-.+)-([^-]+)-([^-&]*)([^-]*)\.html index$1&$2=$3$4\.html [N]
RewriteRule index-([^-]+)-([^-]*)(.*)\.html index.php?$1=$2$3 [L]

Elles fonctionnent bien. Tu tournes quoi en local ? EasyPhp ?

Posté

oui, effectivement, je vais pas ré-inventer la poudre, y'a plein de gens bien meilleurs que moi... ;-)

Par contre, effectivement, je suis sous easyphp, en local...

A+

Posté

Quelle version d'EasyPhp/Apache tournes-tu ?

Parce que la version EasyPhp 1.6 est fournie si je ne m'abuse avec une version Apache buggée pour le rewrite sous Windows.

Il faut au moins une version Apache 1.3.27 pour que ce bug dans rewrite.c disparaisse.

Posté

je cherche depuis tout à l'heure ou je peux trouver la version....

bon, ok, c'est easyphp 1.7 (je crois) et apache 1.3.27 (sauf que phpinfo me donne 1.3.24???)

:gueule:

Je comprends rien...

Posté

Quand je regarde la dernière ligne du log, elle me semble correcte vu que tu as les bons arguments.

127.0.0.1 - - [07/Jun/2005:09:03:30 +0200] [127.0.0.1/sid#845918][rid#38b81a8/initial] (3) split uri=main.php?page=videos&cat=1-> uri=main.php, args=page=videos&cat=1

Qu'as-tu après cette ligne ? Et qu'as-tu dans le log Apache ?

Posté

J'ai rien du tout apres cette ligne dans le rewrite.log et dans le acces.log j'ai :

127.0.0.1 - - [08/Jun/2005:09:37:24 +0200] "GET /monsite.com/videos/main-page-videos-cat-1.html HTTP/1.1" 400 330

Veuillez vous connecter pour commenter

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



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