[Résolu] Problème de .htaccess avec ma page d'accueil

WRInaute discret
Bonjour,

M'ntéressant depuis hier au rewriting, j'ai mis en place un fichier .htaccess après avoir suivi le guide complet de url rewriting.


Code:
#--------------------------------------------------
# Répertoire : racine
#--------------------------------------------------

# Le serveur doit suivre les liens symboliques :
Options +FollowSymlinks

# Activation du module de réécriture d'URL :
RewriteEngine on

#--------------------------------------------------
# Règles de réécriture d'URL :
#--------------------------------------------------

# Rubrique :
RewriteRule ^index-([0-9]+)-([0-9]+)\.html$
 index.php?menu=$1&rubrique=$2 [L]

# Logiciels :
RewriteRule ^index-([0-9]+)-([0-9]+)\.html$
 index.php?menu=$1&idlog=$2 [L]

 # News :
RewriteRule ^index-([0-9]+)-([0-9]+)\.html$
 index.php?menu=$1&idnews=$2 [L]


Seulement j'ai un erreur 500. :cry:
Tout est géré depuis ma page index.php

Pourriez-vous me dire ce qui ne va pas :?:

Merci de votre aide ..... :wink:
 
WRInaute discret
Onthisplanet a dit:
Ton hébergeur accepte l'URL rewriting ?

bonjour et merci pour ta réponse ....

oui mon hébergeur accepte l'url rewriting puisque j'ai testé avec l'exemple de test.html et inconnu.html (d'après le guide complet de WRI) et tout fonctionne correctement

peut-etre ais-je mal codé le .htaccess ?

sinon un exemple de page sur mon site : http://www.pcinfos.net/index.php?menu=l ... =animation
on est dans le premier cas de mon .htaccess
on devrait donc avoir : index-logiciel-animation.html


EDIT : je n'utilise pas les nombres mais les lettres, le RewriteRule que j'utilise n'est pas bon dans ce acs ?? n'est-ce-pas ??
je devrais plutôt avoir
Code:
# Rubrique :
RewriteRule ^index-([0-9a-zA-Z]+)-([0-9a-zA-Z]+)\.html$
 index.php?menu=$1&rubrique=$2 [L]

MERCI pour votre aide
 
WRInaute occasionnel
Question saugrenue... Rassure-moi :

Tu n'as pas de retour à la ligne entre ces deux lignes ? Il s'agit bien d'une seule et même ligne dans ton fichier ?
Code:
RewriteRule ^index-([0-9]+)-([0-9]+)\.html$ 
 index.php?menu=$1&rubrique=$2 [L]

Deuxio, mais ce n'est pas ça qui génère l'erreur 500 :
chacune de tes règles commence exactement pareil :
"RewriteRule ^index-([0-9]+)-([0-9]+)\.html$ "

Ce qui fait que tes trois règles peuvent être imagées ainsi :
Si ce sont des oranges, mets les dans le panier 1
Si ce sont des oranges, mets les dans le panier 2
Si ce sont des oranges, mets les dans le panier 3

Voilà à peu près dans quelle situation tu places mod_rewrite puisqu'il n'y a aucune différence dans la partie gauche de tes trois règles. Il va donc falloir trouver quelque chose de mieux que index-qqch-qqch.html, de façon à différencier les trois cas.

Juste par curiosité, tu n'as pas accès aux logs Apache pour voir si l'erreur 500 y figure avec un message plus complet ?
 
WRInaute discret
Merci pour ta réponse

Bon j'ai un peu modifié tout cela
et je n'ais plus d'erreur 500
Par contre (question bete mais quand on ne s'y connait pas c pas evident) comment savoir si l'url rewriting fonctionne correctement ??
 
WRInaute occasionnel
Pour voir si l'URL rewriting fonctionne, il faut juste taper dans ton navigateur l'URL rewritée, et tu vérifies que tu tombes bien sur la bonne page.

ex, tu tapes -http://www.example.com/index-5-machin.html
et tu vois si ça amènes bien là ou tu as configuré.
Dans la barre d'adresse du navigateur, l'adresse restera inchangée (celle que tu as tapée) car tu utilises une redirection interne (par opposition aux redirections R=301 ou R=302 par exemple, qui elles, changent l'URL vue par l'utilisateur).

Par contre, les pages générées par ton application ont encore des liens à l'ancien format. C'est à toi de modifier le code de ton site pour offrir à l'utilisateur des liens contenant les URLs modifiées, sinon ton url rewriting ne sert à rien (puisque personne n'ira spontanément entrer une URL rewritée dans la barre de navigation).

J'espère avoir été assez clair
 
WRInaute discret
ChezThierry a dit:
Pour voir si l'URL rewriting fonctionne, il faut juste taper dans ton navigateur l'URL rewritée, et tu vérifies que tu tombes bien sur la bonne page.

ex, tu tapes -http://www.example.com/index-5-machin.html
et tu vois si ça amènes bien là ou tu as configuré.
Dans la barre d'adresse du navigateur, l'adresse restera inchangée (celle que tu as tapée) car tu utilises une redirection interne (par opposition aux redirections R=301 ou R=302 par exemple, qui elles, changent l'URL vue par l'utilisateur).

Par contre, les pages générées par ton application ont encore des liens à l'ancien format. C'est à toi de modifier le code de ton site pour offrir à l'utilisateur des liens contenant les URLs modifiées, sinon ton url rewriting ne sert à rien (puisque personne n'ira spontanément entrer une URL rewritée dans la barre de navigation).

J'espère avoir été assez clair
:wink: :D :wink:
cela fonctionne comme je le souhaite

reste plus que la grosse partie : modifier les liens internes de mon site

en tout cas un grand MERCI
 
Discussions similaires
Haut