Bonjour
j'ai mis .htaccess mais je ne sais pas si le problème vient réellement du .htaccess ou de l'arborescence du site… ou des deux.
mon code .htaccess est à peu près dans ce format :
1 2 3 4 | RewriteRule ^([a-z-]+)$ /$1.html [L] RewriteRule ^([a-z-]+)/([a-z-]+)$ /$1/$2.html [L] RewriteRule ^([a-z-]+)/$ /$1 [R=301,L] RewriteRule ^([a-z-]+)/([a-z-]+)/$ /$1/$2 [R=301,L] |
en gros si le fichier que veut l'utiliser est "/azerty" le site lui affiche "/azerty.html" si le fichier que veut l'utiliser est "/123/azerty" le site lui affiche "/123/azerty.html"
le problème est que ça me retourne une erreur, à cause d'une redirection qui ne se complétera pas selon Firefox
en regardant d'un peu plus prêt les entêtes des réponses HTTP je vois :
"/azerty" me redirige vers "/azerty/" - pas normal
"/azerty/" me redirige vers "/azerty" - normal
sauf que ça fait une boucle et c'est sûrement ce qui fait planter le truc.
Le problème est que le dossier "/azerty/" existe vraiment, ce qui est vrai pour tous les fichiers… chaque fichier à la racine dispose d'un dossier correspondant (c'est un site bizarre).
si je renomme le dossier "/azerty/" en "/azerty1/" ça marche.
mais comme je ne peux pas mettre en place cette solution, sauf vraiment en dernier recours, je me demandais s'il n'était pas possible de résoudre le problème autrement.
par exemple quand je renomme le dossier "/azerty/" en "/azerty1/" et que je demande le fichier "/azerty", l'entête de ma réponse HTTP ne me donne plus une redirection mais un "200 ok".
Et c'est bien la page "/azerty.html" qui est affichée.
Donc vraisemblablement il y a deux cas de figures : 1. le dossier "/azerty/" existe -> l'utilisateur est redirigé vers ce dossier s'il demande le fichier "/azerty" 2. il n'existe pas -> pas de redirection, tout fonctionne
N'y a-t-il pas moyen de forcer Apache à se comporter comme dans le cas 2 ?
merci !