|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | ||
|
Membre régulier
![]() Inscription : juillet 2004 Messages : 144 ![]() |
Bonjour à tous,
J'ai problème avec la fonction is_dir qui me renvois toujours faux sur un repertoire qui existe. Voici un script tout bete que j'ai fait pour debugger : Code :
Si je lance ce script via un navigateur, cela me renvoi 'nok'. les repertoire arbo1 et arbo2 on les memes droits et propriétaire. Si je refais ce test avec /home/arbo1 seulement, cela marche dans les 2 cas Je sais qu'il y a deja eu des bugs de recenssés avec cette fonction, croyez vous qu'il sagissent de cela ici ? Ou alors il ya qqchose que je ne vois vraiment pas.. En tous cas, merci a ceux qui tenteront de m'aider. |
||
|
|
00
|
|
|
#2 |
![]() ![]() Inscription : juin 2003 Messages : 4 893 ![]() |
le répertoire "arbo2" a peut-être des droits d'accès spéciaux ?
__________________
Modérateur PHP |
|
|
00
|
|
|
#3 |
![]() ![]() Guillaume RossoliniDirecteur technique Inscription : février 2004 Messages : 13 720 ![]() |
Essaie avec file_exists() : si elle retourne TRUE, alors tu as soit is_dir() soit is_file()... Espérons
__________________
Mes articles - Zend Certified Engineer (PHP + Zend Framework) Ressources PHP - Ressources Zend Framework |
|
|
00
|
|
|
#4 |
|
Membre confirmé
![]() Inscription : janvier 2007 Messages : 276 ![]() |
Ou peut etre que tu n'as pas accès a la fonction is_dir...
bloquée par l'hébergeur! Essaie file_exists ca marche bien ^^ |
|
|
00
|
|
|
#5 |
|
Membre régulier
![]() Inscription : juillet 2004 Messages : 144 ![]() |
Merci pour vos reponses.
J'ai revérifié les droits/user/group des repertoire en question : Repertoire arbo1 : drwx------ 7 user1 group1 Repertoire arbo2 : drwxrwxrwx 5 user1 group1 Sinon, j'ai testé avec la fonction file_exists, cela a le meme comportement : - Fonctionne lorsque je lance le script en ligne de commande. - Lorsque je l'integre dans une appli afin de le tester sur un navigateur web : Warning: stat failed for /home/arbo1/arbo2 (errno=13 - Permission denied) in /home/arbo3/monScript.php on line 7. |
|
|
00
|
|
|
#6 |
|
Membre chevronné
![]() Inscription : novembre 2003 Messages : 737 ![]() |
Un problème de chown, en ligne de commande ton bash a accès au répertoire en question mais pas le processus de apache (group www-data ?).
Il te suffit donc d'adapter avec chown ou les droits avec chmod
__________________
http://www.ape-project.org/ |
|
00
|
|
|
#7 |
|
Membre régulier
![]() Inscription : juillet 2004 Messages : 144 ![]() |
Je suis sous une RedHat, dans mon httpd.conf j'ai ceci :
User nobody Group users J'ai tester en faisant un chown -R noboby:users sur le repertoire en question, et rien n'y fait.. Ce qui est vraiment byzarre, c'est que cela fonctionne pour mon repertoire /home/rep1 et pas pour le repertoire /home/rep1/rep2... Alors que rep1 et rep2 ont le meme propriétaire, le meme groupe, et le rep2 a meme + de droits que rep1... Je seche |
|
|
00
|
|
|
#8 |
![]() ![]() Inscription : juin 2003 Messages : 4 893 ![]() |
essaye un "chmod o+r " sur le répertoire "arbo1"
__________________
Modérateur PHP |
|
|
00
|
|
|
#9 |
|
Membre régulier
![]() Inscription : juillet 2004 Messages : 144 ![]() |
J'ai fait
J'ai retesté avec is_dir, et file_exists, c'est toujours pareil... En fait, aucune fonction liée au repertoire ne passe (ni meme chdir,opendir...) Merci malgrés tout |
|
|
00
|
|
|
#10 |
|
Membre régulier
![]() Inscription : juillet 2004 Messages : 144 ![]() |
J'ai reussi à me débloquer, mais ma solution n'est pas top au niveau sécurité..
(De plus, cela me fait penser que ce post est du coup dans la mauvaise partie puisqu'il correspond plus à une problème lié au paramétrage du serveur apache... je m'excuse auprés des modo Voila, en fait j'ai modifié le httpd.conf de manière a ce que le user, et le group soient les mêmes que ceux des repertoires dans lesquels je souhaite travailler. Ce qui est trés byzarre, c'est que ma fonctionnalité qui pose problème sous Redhat, ne pause aucun problème sous Debian. Je pense donc que le problème viens plus d'un parametrage d'apache. J'ai comparé les 2 httpd.conf des 2 serveurs, de manière a les mettre à l'identique, et rien ne change. Il reste malgrés tout une différence dans les 2 httpd.conf : Sous Debian (qui marche): Sous RedHat (qui ne marche pas): Quelqu'un aurait t'il une lueur d'idée ? Sinon tanpis, je prendrais ma solution pas top |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com