|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Futur Membre du Club
![]() Inscription : février 2005 Messages : 52 ![]() |
Bonjour,
je code en php depuis quelques années et je viens de tomber sur un truc qui m'a laissé pantois Soit un serveur web avec le répertoire /var/www/site1/chelou.php Je peux lancer de façon classique ce fichier avec mon navigateur sur http://site1/chelou.php J'ai fait une erreur d'étourderie dans un lien et j'ai pointé cette page avec l'url http://site1/chelou/index.php ... ça fonctionnait sans soucis, sauf les liens relatifs vers les css & co qui ne fonctionnaient plus, pointant sans doute vers le répertoire /chelou/ inexistant Je reviens quelques mois plus tard corriger un bug sur l'URL chelou/index.php et je m’arrache les cheveux car je ne trouve pas de répertoire /chelou/ à la racine du site1 J'ai eu peur jusqu'à ce que je me rende compte que si je crée un fichier /chelou/index.php, celui ci a bien le dessus sur chelou.php. Je me demande quand même dans quel partie de la configuration d'apache dit-on qu'un appel vers chelou/index.php peut mener à chelou.php si le répertoire /chelou/ n'existe pas ? Ca semble être la config par défaut, ça ne pose pas plus de problème que ça ? |
|
|
00
|
|
|
#2 |
![]() ![]() Inscription : août 2005 Messages : 8 301 ![]() |
Ca, ça doit être parce que la négociation de contenu est activée. Apache ne trouve pas le répertoire chelou mais comme la négociation de contenu est activée, il regarde un peu atour voir s'il ne trouve pas un répertoire ou un fichier au nom approchant et bingo ! il trouve chelou.php et trouve malin de l'exécuter.
__________________
![]() Du détail, du détail, du détail !!! Revenons à la source : lisons la documentation et les fichiers de trace, la réponse à notre problème s'y trouve sans doute
|
|
|
00
|
Copyright © 2000-2012 - www.developpez.com