Bonjour,
J'aimerai empêcher l'accès à certains de mes fichiers via l'url en configurant directement dans la config apache ( je suis sous Debian squeeze ). J'ai trouver de nombreux sujets traitant des .htaccess mais la doc dis que c'est mieux de le mettre dans apache si on y a accès.
J'ai donc testé des trucs comme :
Ce qui me retourne une belle erreur 403. Impeccable.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 <Directory [chemin d'accès]/> Order deny,allow Deny from all </Directory>
Maintenant j'aimerai autoriser l'accès à / qui renvoie vers l'index et donc index.php et index.html s'ils sont indiqué dans l'url.
D'après http://httpd.apache.org/docs/2.2/fr/sections.html, j'avais espérer le faire fonctionner avec ceci (après le directory) :
Mais cela ne me donne pas l'accès à index.php depuis l'url qui me renvoi vers une erreur 403. Ou ai-je merdé ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 <Files index.php> Order allow, deny Allow from all </Files> <Files index.html> Order allow, deny Allow from all </Files>
Une fois ce soucis régler, j'ai constater un autre soucis, impossible d'appeler la page depuis un script php. Chose normal puisque c'est censé renvoyer une erreur 403.
Comment autorisé mes scripts php à y accéder via des requires, include etc...
Allow from 127.0.0.1 dans le directory n'as pas solutionner mon problème.
Le problème se pose donc aussi pour les fichier css, js etc... !
J'aimerai donc me réorienter vers les regex pour écrire tout cela plus proprement. Mais le je suis un peu paumé sur la façon d'écrire ceci :
Interdit uniquement toute extension .html ou .php excepté index.php et index.html et autorise le reste.
Le but étant que j'ai des scripts php que je ne souhaite pas voir lancé via une url, elles sont censée être appelé que depuis d'autre page php. Et des pages html complètement difforment si appelé en dehors de la page qui est censé la gérer.
Je personnaliserai les différentes erreur ensuite pour traiter tout ça.
Merci !
Edit : je viens d'essayer de comprendre Regular-Expressions. Il doit bien y avoir moyen avec cela.
Un début d'idée serait :
Je testerai demain, j'suis trop fatigué la.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 <Directory [chemin d'accès]/> Order deny,allow Deny from all </Directory> <FilesMatch "\.(gif|jpe?g|png|css|js)$"> Order allow, deny Allow from all </Files>
Partager