Pourquoi utiliser des url de type
http://abcdef.ghi/mon_repertoire/index.html
plutôt que
http://abcdef.ghi/mon_repertoire/
ce qui est quand même plus joli.
Question :
Vous avez un site avec une page qui fait les updates du site, vous avez un cron qui appelle cette page avec un wget, cette page est protégée, vous avez vérifié que le wget passe depuis le serveur et pourtant votre page ne bouge pas ... depuis des heures et malgré vos tests récurrents avec le wget ... Mais que se passe t il ...
Réponse :
Votre premier test wget a créé un index.html puis des index.html.1, .2, etc. Et vous regarder desespérément cette première page générée qui ne change pas, et vous faites des refresh et ça ne change pas car quand vous utilisez http://abcdef.ghi/mon_repertoire/ et si un index.html existe, le serveur n'a aucune raison d'appeller votre index.php même si c'est la page que vous vouliez afficher :)
Vicieux, hein ?
Maintenant j'ai enfin une raison pour mettre des urls complètes :/
Dommage, je trouvais ça beaucoup plus joli avec juste le répertoire ...
# Réglage?
Posté par Larry Cow . Évalué à 9.
Parce se priver d'URLs "compréhensibles" pour ça, ça me paraît un peu dommage.
[^] # Re: Réglage?
Posté par rangzen (site web personnel) . Évalué à 3.
[^] # Re: Réglage?
Posté par TNorth . Évalué à 2.
DirectoryIndex index.php
mes 2 sous...
[^] # Re: Réglage?
Posté par Larry Cow . Évalué à 2.
Le truc, c'est qu'effectivement l'ordre est important (ce qui permet notamment de rajouter une page d'erreur spécifique aux tentatives d'accès à des répertoires non-indexés : il suffit de terminer la ligne de DirectoryIndex par un /erreur.html, par exemple)
# Non, pas vicieux
Posté par romain . Évalué à 2.
Parce que tu peux aussi plus simplement demander à wget de forcer le fichier de sortie (wget -O index.html http://tonurl/ ).
[^] # Re: Non, pas vicieux
Posté par rangzen (site web personnel) . Évalué à 0.
wget -q -O /dev/null url
mais pour voir ce qui se passait, j'ai fait sans. Je ne savais pas que par défaut wget enregistre en index.html :)
[^] # Re: Non, pas vicieux
Posté par inico (site web personnel) . Évalué à 2.
Comme ça wget ne dis vraiment rien :P
# Mauvais argument
Posté par Sébastien Koechlin . Évalué à 10.
Tu as fais une fausse manip et tu as écris un nouveau fichier sur le serveur web, c'est de ta faute.
Appeler explicitement index.php est contraite à l'architecture du Web qui veut que:
- Une URL ne change pas même si la techno change derrière.
- Les adresses ne doivent pas contenir des informations d'implémentation, ici PHP.
- Le client n'a pas à réclamer explicitement l'index d'un répertoire. Il doit demander une ressource sans se préocuper d'une distinction fichier/répertoire ou autre. Dans ce cadre, index n'apporte rien, au contraire.
- Le fait d'associer l'espace des URLs à une arborescence disque réelle contribue à la confusion entre les deux.
Cela n'a rien à voir avec une URL plus jolie qu'une autre..
[^] # Re: Mauvais argument
Posté par rangzen (site web personnel) . Évalué à -2.
Bon, je laisse tomber, je postais juste en espérant que ça servirait à d'autre ...
Vendredi prochain, promis, je reviens aux idées pas nouvelles ou aux trolls.
Bon week end à tous :)
[^] # Re: Mauvais argument
Posté par romain . Évalué à 7.
Parce que sinon, ça ne remet pas en cause l'"architecture du web", et ça marche malgré tout.
# Url d'exemple
Posté par Geo Vah . Évalué à 10.
http://fr.wikipedia.org/wiki/Example.com
Hop hop hop je suis déja sorti !!
# Complètement faux.
Posté par Émilien Kia (site web personnel) . Évalué à 7.
Ensuite, pointer vers http://example.net/monrep/ est sémantiquement complètement différent de http://example.net/monrep/index.html même si ton serveur http te redirige la même ressource interne.
C'est pas dur à appréhender mais je peux résumer la spécification des URI pour t'en convaincre : deux URI sont équivalentes si une fois normalisée (casse du schéma et %encodage des caractères), les ressources pointées (et notament les chemins) sont identiques. Hors là ce n'est pas le cas. De plus, dans la spécification du schéma http pour les URI, rien n'indique qu'un répertoire identifie son fichier par défaut.
URI : http://www.gbiv.com/protocols/uri/rfc/rfc3986.html
Un jour libre ?
# Et pour en rajouter une couche...
Posté par David Sporn (site web personnel) . Évalué à 1.
comme dit plus haut, la ligne de config apache qui liste les fichiers à afficher par défaut donne en plus un ordre de préséance (on teste les nom de fichier dans l'ordre spécifié, premier trouvé, premier affiché)
On peut encore rajouter une couche d'indirection avec mod_rewrite (invisible pour l'utilisateur)
et ainsi faire en sorte que
http://host/home corresponde en fait à http://host/mon_site/home.php
Ce qui permet ensuite, lors d'une évolution majeure du site (p.ex changement du système de gestion de contenu), de garder la même uri pour le visiteur, mais appeler la nouvelle version, par ex :
V1 du site :
http://host/home --> http://host/mon_site/home.php
V2 du site
http://host/home --> http://host/mon_blog/dotmachin/index.php
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.