IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

comment est traite l'url sur un fichier inexistant ?


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Inscrit en
    Avril 2011
    Messages
    12
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Avril 2011
    Messages : 12
    Par défaut comment est traite l'url sur un fichier inexistant ?
    Bonjour,

    Je me mets doucement au php en "developpant" un micro-wiki en local, en m'inspirant d'un autre petit wiki (chuwiki), et je bloque sur une petite histoire d'url.

    Dans le repertoire racine de chuwiki, il y as un script wiki.php, et j'aimerais bien comprendre ce qui se passe quand j'appelle un article pas encore créé, par exemple : :http://localhost/chuwiki-2.0/wiki/new_article.

    Je sais que "Options +MultiViews" dans mon .htaccess m'evite les extensions de fichiers, donc je crois comprendre que wiki vaut wiki.php.

    Par contre je ne suis pas sur de ce qui se passe avec new_article dont la cible n'existe pas. Est ce qu'il y a une redirection du serveur vers wiki.php, ou bien est ce que wiki.php est consideré comme un repertoire virtuel et que le nom "new_article" lui est transmis comme parametre (genre wiki.php?page=new_article) ou est ce que ca prend une autree forme ?

    Je m'excuse pour cette question de débutant, mais si je pose la question c'est que j'ai vraiment cherché sans résultat.

    Si quelqu'un pouvait éclairer ma lanterne, je lui en serais gré. D'avance merci !

  2. #2
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Par défaut
    Je ne connais pas chuwiki mais il est très probable effectivement que l'url soit transformée pour passer "new_article" en paramètre.
    Dans ton .htaccess tu dois avoir des "RewriteRule" qui gèrent ça.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  3. #3
    Membre averti
    Homme Profil pro
    Inscrit en
    Avril 2011
    Messages
    12
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Avril 2011
    Messages : 12
    Par défaut
    Merci

    non pas de regle d'url rewriting dans le .htaccess. voici d'ailleurs sons contenu complet :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    # Afin de ne pas spécifier l'extension des fichiers dans les URI
    Options +MultiViews
     
    # Protection du fichier de configuration
    <Files configuration.ini>
    	Deny from all
    </Files>

  4. #4
    Membre averti
    Homme Profil pro
    Inscrit en
    Avril 2011
    Messages
    12
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Avril 2011
    Messages : 12
    Par défaut
    En fait je crois que j'ai abandonné un peu trop vite, je viens de faire quelques essais qui m'ont eclairé (selon la bonne vieille technique -> essaye tout pleins de trucs, il en sortirat bien quelque chose). Je vais donc mettre ma réflexion ici au cas ou ca pourrait être utile à un autre débutant.

    Ce que je n'arrivait pas à comprendre c'est ce qui se passait quand j'appelais : http://localhost/chuwiki-2.0/wiki/new_article
    Je m'imaginais que ca générait une erreur (genre 404) et qu'en interne, le serveur ou le moteur php redirigais le tout vers une page valide.

    Que nenni, mon bon monsieur vous êtes dans l'erreur jusqu'au cheveux. Pas de redirection décidée par on ne sait qui.

    Tout simplement quand j'appelle mon url (ou uri ? jamais compris la difference entre les deux) et qu'il arrive sur /wiki, comme il trouve un script valide, il l'execute, sans état d'ame pour la partie qui suit (le /new_article).

    Par contre l'url recueillie par le scrit est bien la ligne complete comme nous le revele un $_SERVER['REQUEST_URI'] bien que l'on execute le script wiki.php comme le prouve $_SERVER['SCRIPT_NAME']

    Il suffit donc par la suite de séparer la partie qui dépasse (le /new_article) même si ce n'es pas un paramètre au sens strict, et de s'en servir dans la suite du script.

    Je suis soulagé, car finalement je m'aperçois que je suis moins bête que ce que je craignais, et que je sais encore résoudre un "énigme"

    Bon, si vous pensez que je n'ai pas dit trop de bétises, pouvez vous mettre le tag Resolu (car je n'ai pas trouvé le bouton pour le faire) ?

    Et merci à tous ceux qui seront passé par là !!

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [XL-2007] Comment eviter de dupliquer macro sur imports fichier xml
    Par ALEX80800 dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 08/11/2013, 20h54
  2. Réponses: 3
    Dernier message: 08/10/2010, 11h49
  3. Réponses: 9
    Dernier message: 19/02/2009, 16h02
  4. comment faire un chmod 777 sur un fichier
    Par ideal23 dans le forum Langage
    Réponses: 3
    Dernier message: 18/06/2008, 15h45

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo