Bonjour,
après des recherches approfondies, j'ai remarqué que mon problème est relativement récurrent, mais je n'ai jamais trouvé de réponse.
Je rencontre en fait deux problèmes :
1er problème :
--------------------------------
Voilà, j'ai un site web avec une arborescence bien précise... on trouve un dossier "public" pour tout ce qui est directement accessible, et un dossier "prive" pour le reste... J'ai donc créé un .htaccess à la racine de "prive", pour interdire l'accès aux fichiers que ce dossier contient...
Seulement, voilà, ma page publique inclut certains fichiers (qui sont dans prive/include) et affiche une image (qui est dans prive/images), et je n'ai trouvé que deux possibilités :
1) j'autorise l'accès total aux fichiers à inclure, et aux images à afficher
2) je bloque l'accès aux fichiers d'inclusion afin que les utilisateurs ne puissent pas les visualiser en rentrant leurs URL (mais l'inclusion serait impossible alors, non ?)
Seulement, je voudrais que l'accès aux fichiers d'inclusion soit interdit si et seulement si l'utilisateur tente de saisir l'url directement de ceux-ci (ce qui donnerait quelque chose comme http://monsite.com/prive/include/ainclure.inc.php), et autorisé sans condition quand ma page publique les inclut !
Je dois avouer que je sèche un peu sur ce point...
2ème problème :
--------------------------------
Mon .htaccess de mon dossier "prive" interdit l'accès à tous les fichiers appartenant à celui-ci. En plus du problème évoqué plus haut, je souhaiterais qu'un fichier spécial (en url, ça donnerait qqch comme http://monsite.com/prive/admin/admin.php) soit accessible par login/mdp...
pour se faire, j'ai donc créé un deuxième .htaccess dans le dossier "admin", qui demande la saisie d'un login/mdp pour accéder à admin.php...
malgré mon deuxième .htaccess, quand j'essaye d'accéder à la page admin.php, le navigateur me renvoie une erreur de type 403 (accès interdit)...
Je vous présente rapidement l'arborescence de mon site :
public
pageincluante.phpprive
.htaccessadmin
.htaccesscss
.htpasswd
admin.php
form
images
imageaafficher.jpginclude
ainclure1.inc.php
ainclure2.inc.php
Voici le .htaccess à la racine de "prive" (pour les exceptions que sont les fichiers à inclure, j'ai pour l'instant choisi d'autoriser l'accès sans condition à ceux-ci, ce qui ne me satisfait ds le cas d'une saisie directe de l'url par l'utilisateur)
Voici le second .htaccess, situé dans "prive/admin", qui ne fonctionne pas...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 order deny,allow deny from all <files ainclure1.inc.php> order deny,allow allow from all </files> <files imageaafficher.jpg> order deny,allow allow from all </files> <files ainclure2.inc.php> order deny,allow allow from all </files>
Rq : je développe sous Windows en local actuellement, d'où l'utilisation des '\' dans le chemin absolu
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 <files admin.php> AuthName "Authentification requise" AuthType Basic AuthUserFile "[...]\prive\admin" Require valid-user </files>
Merci d'avance de votre aide !
Rolf IV
Partager