Urlrewriting .htaccess, internal error 500

WRInaute passionné
Bonjour,

L'urlrewriting sur mon site fonctionne bien, mais là je viens d'ajouter une règle de réécriture qui déclenche une erreur 500.

Lorsque je retire cette règle, tout fonctionne. Lorsque je la remets, ça bug.

Voici la chose :
Code:
RewriteRule ^categorie-([a-z])\.htm$  /?categorie=$1 [L]
RewriteRule ^specialite-([a-z-]+)\.htm$  /?specialite=$1 [L]
RewriteRule ^([a-z-]+)\.htm$  /?article=$1 [QSA,L]
RewriteRule ^membre-([0-9]+)\.php$  /?inscriptionGratuite=$1 [L]
RewriteRule ^video-([0-9]+)\.php$  /?video=$1 [L]

#====C'est cette règle qui bug  =====
#Ci-dessous la variable qui affiche une page payante
RewriteRule ^([a-z-]+)\.php$  /?inscriptionPayante=$1 [L]

Merci d'avance pour votre aide.
 
WRInaute passionné
Je viens d'avoir une réponse d'un technicien d'OVH, mais je ne comprends pas ce qu'il veut dire :
Bonjour,

je viens de tester cela de mon coté et regarder les logs d'erreur:
[Thu Jan 08 17:10:37 2009] [error] [client adresse.ip] [host site.com] Request exceeded the limit of 10 internal redirects due to probable configuration error. Use 'LimitInternalRecursion' to increase the limit if necessary. Use 'LogLevel debug' to get a backtrace.

comme vous pouvez le voir dans ces logs , vous avez du effectuer une boucle avec vos regles.
il faudra vérifier cela svp.

Qu'est-ce qu'il veut dire par là :?:
 
WRInaute impliqué
qu'une page réécrite se re-rerécrit avec une autre règle et ainsi de suite (plus de 10 fois ... et même sûrement une infinité de fois)

Moi je vote "avec la ligne 3"


j'espère ne pas être à 100km de la vérité
 
WRInaute passionné
Quand j'enlève cette ligne, c'est à dire la règle identique mais avec une extension en .htm, ça déclenche le même problème.
Quant aux autres, elles sont très différentes, alors je ne pige toujours pas.

Le problème se situe-t'il forcément dans le htaccess ou peut-il se situer dans un script ? Même là je ne vois pas ce qui pourrait clocher, mais bon, c'est pour comprendre.
 
WRInaute accro
RewriteRule ^([a-z-]+)\.php$ /?inscriptionPayante=$1 [L]

Ca boucle à l'infini non puisque index.php va appeler /? = /index.php?
 
WRInaute accro
Bon ^^

/? == /index.php?

t'es d'accord avec moi jusque là ?

Ensuite, la dernière règle que tu as ajouté va créer une boucle infinie.
Par exemple, tu affiches dans ton navigateur index.php, à cause de la dernière règle, il va dire d'aller voir sur /?inscriptionPayante=... . Seulement /?inscriptionPayante=... == /index.php?inscriptionPayante=..., donc rebelote, il va interpréter ta dernière règle htaccess et aller prendre /?inscriptionPayante=index.php?inscriptionPayante=.. . Etc ...

SOLUTION:

Renomer ton fichier php physique en toto.php et faire un htaccess comme ceci:

Code:
RewriteRule ^categorie-([a-z])\.htm$  /toto.php?categorie=$1 [L]
RewriteRule ^specialite-([a-z-]+)\.htm$  /toto.php?specialite=$1 [L]
RewriteRule ^([a-z-]+)\.htm$  /toto.php?article=$1 [QSA,L]
RewriteRule ^membre-([0-9]+)\.php$  /toto.php?inscriptionGratuite=$1 [L]
RewriteRule ^video-([0-9]+)\.php$  /toto.php?video=$1 [L]

#====C'est cette règle qui bug  =====
#Ci-dessous la variable qui affiche une page payante
RewriteRule ^([a-z-]+)\.php$  /toto.php?inscriptionPayante=$1 [L]

Et être sur de ne jamais appeler toto.php dans ton navigateur, sinon ça refera une boucle infinie.
 
WRInaute passionné
Oui, j'ai pas tout compris, notamment cette syntaxe :
Code:
/? == /index.php?

Ceci dit, à tout hasard, j'ai remarqué que dans le dossier www/admin, j'ai un autre fichier index.php qui appelle une page en fonction d'une variable nommée elle aussi ?pagePro.

Est-ce que ça n'interfèrerait pas www/index.php :?:
 
WRInaute accro
Tu m'énerves un peu quand même à utiliser plein de trucs sans les comprendre :mrgreen:. Bon on y va avec les bases:

Quand tu vas sur une adresse telle que: -https://www.webrankinfo.com/ , Tu n'es pas étonné quand le navigateur t'affiches ta page comme si tu avais tapé -https://www.webrankinfo.com/

Non ?

Bah c'est pareil pour les paramètres. Quand tu tapes -https://www.webrankinfo.com/?p=4 c'est pareil que -https://www.webrankinfo.com/?p=3 en plus sale, c'est tout. ;)
 
Discussions similaires
Haut