Problème de .htacess

kivan

WRInaute discret
bonjour à tous, j'ai un gros soucis avec mon .htaccess qui me sert à réécrire les URL.

par exemple

http://www.monsite.com/index-lang-fr.html
devient
http://www.monsite.com/index.php?lang=fr

le htaccess utilisé est :


Code:
RewriteEngine on

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

seulement je viens de me rendre compte que avec l'URL
http://www.monsite.com//www.monsite.com/unepage.html
apache tourne en boucle, prend toute les ressource et au final fait planté le serveur (2 mois que je cherchais d'où ça venait)

Est-ce que quelqu'un saurait comment corrigé le htaccess pour éviter cela ?

Merci d'avance !
 

kivan

WRInaute discret
j'ai continué à fouiller et je commence à me rapprocher du problème, sans pour autant voir pour l'instant une solution.

En fait mon nom de site contient des tirets. Du coup l'URL serait plutot :
http://www.mon-site-perso.com//www.mon- ... ng-en.html

Apache réécrit les couples variable/valuer deux par deux.
Donc pour lui la première est lang=en et la deuxième site=perso.com/unepage

Et là où ca bloque précisement est quand on passe un "/" dans celle-ci, dans notre exemple le "perso.com/unepage"

Comment faire ?

Explication du htaccess ici :
http://www.webmaster-hub.com/publicatio ... rsive.html

merci d'avance
 

Discussions similaires

Haut