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

Apache Discussion :

htaccess : interdire l'accès direct aux fichiers php


Sujet :

Apache

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 5
    Points : 5
    Points
    5
    Par défaut htaccess : interdire l'accès direct aux fichiers php
    Bonjour à tous,

    J'ai plusieurs fichiers php qui ne fonctionne qu'en include. Je souhaite donc interdire le visiteur trop curieux d'ouvrir directement ces fichiers, et qu'il soit redirigé vers la page d'acceuil si besoin. Evidement jamais le nom des fichiers n'apparait dans la source de la page mais on ne sait jamais, il peut toujours deviner.

    En plus de toutes mes regles de réécriture d'url j'ai ajouté au .htaccess:
    [cpp]RewriteCond %{REQUEST_URI} .+\.php
    RewriteRule .* - [F][/cpp]
    Le problème c'est que maintenant mon serveur lui-même ne peut plus accéder aux fichiers.

    Comment faire ?

  2. #2
    Membre expérimenté
    Avatar de Linaa
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    987
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 987
    Points : 1 309
    Points
    1 309
    Par défaut
    Je ne vois pas l'utilité.
    Un fichier PHP ne sera jamais visible par l'utilisateur!!

  3. #3
    Rédacteur
    Avatar de BrYs
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    2 014
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France

    Informations forums :
    Inscription : Octobre 2002
    Messages : 2 014
    Points : 3 522
    Points
    3 522
    Par défaut
    Au pire, si tes fichier sont dans un repertoire particulier tu peux autoriser uniquement ton serveur à y acceder comme ça tu es tranquille.

  4. #4
    Futur Membre du Club
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 5
    Points : 5
    Points
    5
    Par défaut
    Pour des raisons pratiques tous mes fichiers sont dans un même repertoire.
    Si je souhaite interdire l'accès direct aux fichiers php c'est parcequ'ils sont prévu pour être inclus dans un autre fichier. Executé seul ces fichiers génèrent des erreurs évidentes car ils n'héritent alors plus des fonctions et de la mise en page du fichier maitre.

  5. #5
    Futur Membre du Club
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    10
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 10
    Points : 9
    Points
    9
    Par défaut
    A mon avis, le meilleur moyen pour se garantir de ce genre de problème, plutôt que d'interdire purement et simplement tous les fichiers phps, tout en restant dans le même repertoire, est d'utiliser une excension différente pour les fichiers prévus pour être inclus (par exemple, .inc.php), puis de rajouter une clause Files dans ton .htaccess

    <Files *.inc.php>
    deny from all
    </Files>

    (avec un ErrorDocument 403 vers la page d'erreur souhaitée) Et le tour est joué, seuls les scripts procédant aux includes pourront y accéder.

    Mais le moyen le plus propre serait tout de même de faire en sorte (par des fonctions et des tests) que l'execution de tes fichiers d'include ne donne rien hors de leur contexte d'include.

  6. #6
    Futur Membre du Club
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 5
    Points : 5
    Points
    5
    Par défaut
    ArkSeth, ton idée de .inc.php me semble être une bonne solution ! Pour les tests dans chaque fichier include, je pense que ça deviendrait assez lourd... Question de choix

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

Discussions similaires

  1. Réponses: 4
    Dernier message: 07/06/2008, 21h07
  2. [PHP-JS] interdire l'accès direct à une page php
    Par clem037 dans le forum Langage
    Réponses: 10
    Dernier message: 17/03/2008, 22h04
  3. [AJAX] Interdire accès direct aux pages PHP
    Par Nasky dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 31/07/2007, 17h28
  4. Interdire l'acces directe aux fichiers php
    Par Never dans le forum Apache
    Réponses: 4
    Dernier message: 04/12/2006, 21h00
  5. [TOMCAT] Comment empêcher l'accès direct aux fichiers
    Par thomine dans le forum Tomcat et TomEE
    Réponses: 17
    Dernier message: 14/04/2005, 10h19

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