Je duplique mon petit serveur LAMP d'un PC sous Debian (2.6.26) à un
portable sous Arch Linux (2.6.39).
Ce serveur me permet d'accéder à mes 6000 mp3 à travers le web.
/var/www/zik/ (sur une partition /root en ext3) contient donc 6000 liens
symboliques vers les 6000 mp3 qui résident dans /home/zik/ (sur une
autre partition aussi en ext3).
Sur la Debian (PHP Version 5.2.6-1+lenny12), le script marche sans
problème : il affiche bien la liste de tous les artistes parce que la
fonction glob() qui scanne /var/www/zik/ retourne bien un tableau
contenant la liste des fichiers.
Par contre, sur le portable (PHP Version 5.3.6), les mp3 sont sur une
partition vfat (parce que je veux que ces mp3 soient accessibles depuis
Windows Seven), et là j'ai un problème : glob() ne remplit pas le
tableau "fichier"...
$fichier = glob( $liste_fichiers_repertoire); //tableau contenant tous les fchiers mp3
echo '<!-- glob liste mp3s : ///'.$fichier['0'].'///-->'."\n\n";
echo '<!-- glob liste mp3s : ///'.$fichier['1'].'///-->'."\n\n";
if ( $fichier['0'] != '' ) { // Si au moins un mp3 a été trouvé
Si je déplace une centaine de mp3 sur une partition ext3 (pas assez de
place libre pour en mettre plus), j'ai pu voir que mon script retombe en
marche.
Pire !!
Sur la debian, j'ai créé une partition vfat, et j'ai fait pointer les
liens symboliques des mp3 que j'y ai déposés vers /var/www/zik/ : mon
script n'a aucun problème pour prendre en compte ces nouveaux liens
symboliques.
J'ai googlé, mais sans trouver aucune référence à un quelconque problème
de cette fonction glob() qui serait lié au système de fichier des
partitions.
En désespoir de cause, je mets deux liens vers phpinfo() de chaque
serveur :
Le vieux PC et sa Debian qui roulaize DLMKT : http://tinyurl.com/3gejtuz
Le portable sous Arch qui pose problème : http://tinyurl.com/3mtxvpj
Merci de vos avis.
--
> Dictature _éclairée_, s'il te plaît. :-)
Les leds du switch qui clignotent, c'est moyen comme éclairage.
Hugo (né il y a 1 488 892 100 secondes)
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Olivier Miakinen
Bonjour,
Le 30/06/2011 22:24, Hugolino a écrit :
Je duplique mon petit serveur LAMP d'un PC sous Debian (2.6.26) à un portable sous Arch Linux (2.6.39).
Ce serveur me permet d'accéder à mes 6000 mp3 à travers le web.
/var/www/zik/ (sur une partition /root en ext3) contient donc 6000 liens symboliques vers les 6000 mp3 qui résident dans /home/zik/ (sur une autre partition aussi en ext3).
Sur la Debian (PHP Version 5.2.6-1+lenny12), le script marche sans problème : il affiche bien la liste de tous les artistes parce que la fonction glob() qui scanne /var/www/zik/ retourne bien un tableau contenant la liste des fichiers.
Par contre, sur le portable (PHP Version 5.3.6), les mp3 sont sur une partition vfat (parce que je veux que ces mp3 soient accessibles depuis Windows Seven), et là j'ai un problème : glob() ne remplit pas le tableau "fichier"...
<cit. http://fr.php.net/glob> ... les règles utilisées par la fonction glob() de la libc ... </cit.>
Est-ce que tu as les moyens de faire le test avec un programme en C ?
$fichier = glob( $liste_fichiers_repertoire); //tableau contenant tous les fchiers mp3
On pourrait savoir ce que vaut $liste_fichiers_repertoire sur chacune des deux machines ?
echo '<!-- glob liste mp3s : ///'.$fichier['0'].'///-->'."nn"; echo '<!-- glob liste mp3s : ///'.$fichier['1'].'///-->'."nn"; if ( $fichier['0'] != '' ) { // Si au moins un mp3 a été trouvé
Ce test est un peu risqué, si tu te retrouves dans le cas signalé dans la doc où glob() retourne false. Voici une suggestion faite dans les commentaires :
if (is_array($fichier) && count($fichier) > 0) { // Au moins un mp3
Si je déplace une centaine de mp3 sur une partition ext3 (pas assez de place libre pour en mettre plus), j'ai pu voir que mon script retombe en marche.
Et si tu n'as qu'une centaine de mp3 sur une partition vfat, ça dit quoi ? Ceci pour voir si la limitation est sur le type de filesystem ou plutôt sur le nombre de résultats...
Pire !! Sur la debian, j'ai créé une partition vfat, et j'ai fait pointer les liens symboliques des mp3 que j'y ai déposés vers /var/www/zik/ : mon script n'a aucun problème pour prendre en compte ces nouveaux liens symboliques.
Ceci semble innocenter le type de filesystem.
J'ai googlé, mais sans trouver aucune référence à un quelconque problème de cette fonction glob() qui serait lié au système de fichier des partitions.
Voilà qui semble encore confirmer mon intuition.
En désespoir de cause, je mets deux liens vers phpinfo() de chaque serveur :
Le vieux PC et sa Debian qui roulaize DLMKT : http://tinyurl.com/3gejtuz Le portable sous Arch qui pose problème : http://tinyurl.com/3mtxvpj
Sur http://fr.php.net/glob il est question entre autres choses de la directive open_basedir : http://fr.php.net/manual/fr/ini.core.php#ini.open-basedir
Or justement, il y a une différence entre tes deux systèmes :
<cit. http://roulaize.fr/phpinfo/> open_basedir no value no value </>
Est-ce que tes fichiers sont bien sous /var/www ou un autre répertoire accessible ?
Bonjour,
Le 30/06/2011 22:24, Hugolino a écrit :
Je duplique mon petit serveur LAMP d'un PC sous Debian (2.6.26) à un
portable sous Arch Linux (2.6.39).
Ce serveur me permet d'accéder à mes 6000 mp3 à travers le web.
/var/www/zik/ (sur une partition /root en ext3) contient donc 6000 liens
symboliques vers les 6000 mp3 qui résident dans /home/zik/ (sur une
autre partition aussi en ext3).
Sur la Debian (PHP Version 5.2.6-1+lenny12), le script marche sans
problème : il affiche bien la liste de tous les artistes parce que la
fonction glob() qui scanne /var/www/zik/ retourne bien un tableau
contenant la liste des fichiers.
Par contre, sur le portable (PHP Version 5.3.6), les mp3 sont sur une
partition vfat (parce que je veux que ces mp3 soient accessibles depuis
Windows Seven), et là j'ai un problème : glob() ne remplit pas le
tableau "fichier"...
<cit. http://fr.php.net/glob>
... les règles utilisées par la fonction glob() de la libc ...
</cit.>
Est-ce que tu as les moyens de faire le test avec un programme en C ?
$fichier = glob( $liste_fichiers_repertoire); //tableau contenant tous les fchiers mp3
On pourrait savoir ce que vaut $liste_fichiers_repertoire sur chacune
des deux machines ?
echo '<!-- glob liste mp3s : ///'.$fichier['0'].'///-->'."nn";
echo '<!-- glob liste mp3s : ///'.$fichier['1'].'///-->'."nn";
if ( $fichier['0'] != '' ) { // Si au moins un mp3 a été trouvé
Ce test est un peu risqué, si tu te retrouves dans le cas signalé dans
la doc où glob() retourne false. Voici une suggestion faite dans les
commentaires :
if (is_array($fichier) && count($fichier) > 0) { // Au moins un mp3
Si je déplace une centaine de mp3 sur une partition ext3 (pas assez de
place libre pour en mettre plus), j'ai pu voir que mon script retombe en
marche.
Et si tu n'as qu'une centaine de mp3 sur une partition vfat, ça dit
quoi ? Ceci pour voir si la limitation est sur le type de filesystem
ou plutôt sur le nombre de résultats...
Pire !!
Sur la debian, j'ai créé une partition vfat, et j'ai fait pointer les
liens symboliques des mp3 que j'y ai déposés vers /var/www/zik/ : mon
script n'a aucun problème pour prendre en compte ces nouveaux liens
symboliques.
Ceci semble innocenter le type de filesystem.
J'ai googlé, mais sans trouver aucune référence à un quelconque problème
de cette fonction glob() qui serait lié au système de fichier des
partitions.
Voilà qui semble encore confirmer mon intuition.
En désespoir de cause, je mets deux liens vers phpinfo() de chaque
serveur :
Le vieux PC et sa Debian qui roulaize DLMKT : http://tinyurl.com/3gejtuz
Le portable sous Arch qui pose problème : http://tinyurl.com/3mtxvpj
Sur http://fr.php.net/glob il est question entre autres choses de la
directive open_basedir :
http://fr.php.net/manual/fr/ini.core.php#ini.open-basedir
Or justement, il y a une différence entre tes deux systèmes :
<cit. http://roulaize.fr/phpinfo/>
open_basedir no value no value
</>
Je duplique mon petit serveur LAMP d'un PC sous Debian (2.6.26) à un portable sous Arch Linux (2.6.39).
Ce serveur me permet d'accéder à mes 6000 mp3 à travers le web.
/var/www/zik/ (sur une partition /root en ext3) contient donc 6000 liens symboliques vers les 6000 mp3 qui résident dans /home/zik/ (sur une autre partition aussi en ext3).
Sur la Debian (PHP Version 5.2.6-1+lenny12), le script marche sans problème : il affiche bien la liste de tous les artistes parce que la fonction glob() qui scanne /var/www/zik/ retourne bien un tableau contenant la liste des fichiers.
Par contre, sur le portable (PHP Version 5.3.6), les mp3 sont sur une partition vfat (parce que je veux que ces mp3 soient accessibles depuis Windows Seven), et là j'ai un problème : glob() ne remplit pas le tableau "fichier"...
<cit. http://fr.php.net/glob> ... les règles utilisées par la fonction glob() de la libc ... </cit.>
Est-ce que tu as les moyens de faire le test avec un programme en C ?
$fichier = glob( $liste_fichiers_repertoire); //tableau contenant tous les fchiers mp3
On pourrait savoir ce que vaut $liste_fichiers_repertoire sur chacune des deux machines ?
echo '<!-- glob liste mp3s : ///'.$fichier['0'].'///-->'."nn"; echo '<!-- glob liste mp3s : ///'.$fichier['1'].'///-->'."nn"; if ( $fichier['0'] != '' ) { // Si au moins un mp3 a été trouvé
Ce test est un peu risqué, si tu te retrouves dans le cas signalé dans la doc où glob() retourne false. Voici une suggestion faite dans les commentaires :
if (is_array($fichier) && count($fichier) > 0) { // Au moins un mp3
Si je déplace une centaine de mp3 sur une partition ext3 (pas assez de place libre pour en mettre plus), j'ai pu voir que mon script retombe en marche.
Et si tu n'as qu'une centaine de mp3 sur une partition vfat, ça dit quoi ? Ceci pour voir si la limitation est sur le type de filesystem ou plutôt sur le nombre de résultats...
Pire !! Sur la debian, j'ai créé une partition vfat, et j'ai fait pointer les liens symboliques des mp3 que j'y ai déposés vers /var/www/zik/ : mon script n'a aucun problème pour prendre en compte ces nouveaux liens symboliques.
Ceci semble innocenter le type de filesystem.
J'ai googlé, mais sans trouver aucune référence à un quelconque problème de cette fonction glob() qui serait lié au système de fichier des partitions.
Voilà qui semble encore confirmer mon intuition.
En désespoir de cause, je mets deux liens vers phpinfo() de chaque serveur :
Le vieux PC et sa Debian qui roulaize DLMKT : http://tinyurl.com/3gejtuz Le portable sous Arch qui pose problème : http://tinyurl.com/3mtxvpj
Sur http://fr.php.net/glob il est question entre autres choses de la directive open_basedir : http://fr.php.net/manual/fr/ini.core.php#ini.open-basedir
Or justement, il y a une différence entre tes deux systèmes :
<cit. http://roulaize.fr/phpinfo/> open_basedir no value no value </>
Est-ce que tes fichiers sont bien sous /var/www ou un autre répertoire accessible ?
Hugolino
Le 30-06-2011, Olivier Miakinen <om+ a écrit :
Le 30/06/2011 22:24, Hugolino a écrit : > > [...] > Par contre, sur le portable (PHP Version 5.3.6), les mp3 sont sur > une partition vfat <...>, et là j'ai un problème : glob() ne remplit > pas le tableau "fichier"...
<cit. http://fr.php.net/glob> ... les règles utilisées par la fonction glob() de la libc ... </cit.>
Est-ce que tu as les moyens de faire le test avec un programme en C ?
J'ai bien un vi et un gcc, mais j'ai cessé mes essais en C...
On pourrait savoir ce que vaut $liste_fichiers_repertoire sur chacune des deux machines ?
/var/www/zik/*mp3
> if ( $fichier['0'] != '' ) { // Si au moins un mp3 a été trouvé
Ce test est un peu risqué, si tu te retrouves dans le cas signalé dans la doc où glob() retourne false. Voici une suggestion faite dans les commentaires :
if (is_array($fichier) && count($fichier) > 0) { // Au moins un mp3
OK, je corrigerai
> [...] Ceci semble innocenter le type de filesystem. > [...] Voilà qui semble encore confirmer mon intuition.
> [...]
Or justement, il y a une différence entre tes deux systèmes :
<cit. http://XXXXXXXXXXX/phpinfo/> open_basedir no value no value </>
Est-ce que tes fichiers sont bien sous /var/www ou un autre répertoire accessible ?
Oui, oui... enfin ils n'étaient donc pas accessibles à php. Et maintenant que j'ai supprimé cette directive, mes scripts qui tapaient dans /proc sont eux-aussi retombés en marche.
Merci à toi.
PS : Puis-je te demander de superseder ton article pour éviter l'archivage en clair de l'adresse de mon site ? (C'est fou le nombres de routeurs qui chauffent entre la Chine et ma Freebox ;-)
-- Les hommes ont peut-être découvert le feu mais les femmes ont appris à jouer avec... Hugo (né il y a 1 488 925 983 secondes)
Le 30-06-2011, Olivier Miakinen <om+news@miakinen.net> a écrit :
Le 30/06/2011 22:24, Hugolino a écrit :
>
> [...]
> Par contre, sur le portable (PHP Version 5.3.6), les mp3 sont sur
> une partition vfat <...>, et là j'ai un problème : glob() ne remplit
> pas le tableau "fichier"...
<cit. http://fr.php.net/glob>
... les règles utilisées par la fonction glob() de la libc ...
</cit.>
Est-ce que tu as les moyens de faire le test avec un programme en C ?
J'ai bien un vi et un gcc, mais j'ai cessé mes essais en C...
On pourrait savoir ce que vaut $liste_fichiers_repertoire sur chacune
des deux machines ?
/var/www/zik/*mp3
> if ( $fichier['0'] != '' ) { // Si au moins un mp3 a été trouvé
Ce test est un peu risqué, si tu te retrouves dans le cas signalé dans
la doc où glob() retourne false. Voici une suggestion faite dans les
commentaires :
if (is_array($fichier) && count($fichier) > 0) { // Au moins un mp3
OK, je corrigerai
> [...]
Ceci semble innocenter le type de filesystem.
> [...]
Voilà qui semble encore confirmer mon intuition.
> [...]
Or justement, il y a une différence entre tes deux systèmes :
<cit. http://XXXXXXXXXXX/phpinfo/>
open_basedir no value no value
</>
Est-ce que tes fichiers sont bien sous /var/www ou un autre répertoire
accessible ?
Oui, oui... enfin ils n'étaient donc pas accessibles à php. Et
maintenant que j'ai supprimé cette directive, mes scripts qui tapaient
dans /proc sont eux-aussi retombés en marche.
Merci à toi.
PS : Puis-je te demander de superseder ton article pour éviter
l'archivage en clair de l'adresse de mon site ? (C'est fou le nombres de
routeurs qui chauffent entre la Chine et ma Freebox ;-)
--
Les hommes ont peut-être découvert le feu mais les femmes ont appris à
jouer avec...
Hugo (né il y a 1 488 925 983 secondes)
Le 30/06/2011 22:24, Hugolino a écrit : > > [...] > Par contre, sur le portable (PHP Version 5.3.6), les mp3 sont sur > une partition vfat <...>, et là j'ai un problème : glob() ne remplit > pas le tableau "fichier"...
<cit. http://fr.php.net/glob> ... les règles utilisées par la fonction glob() de la libc ... </cit.>
Est-ce que tu as les moyens de faire le test avec un programme en C ?
J'ai bien un vi et un gcc, mais j'ai cessé mes essais en C...
On pourrait savoir ce que vaut $liste_fichiers_repertoire sur chacune des deux machines ?
/var/www/zik/*mp3
> if ( $fichier['0'] != '' ) { // Si au moins un mp3 a été trouvé
Ce test est un peu risqué, si tu te retrouves dans le cas signalé dans la doc où glob() retourne false. Voici une suggestion faite dans les commentaires :
if (is_array($fichier) && count($fichier) > 0) { // Au moins un mp3
OK, je corrigerai
> [...] Ceci semble innocenter le type de filesystem. > [...] Voilà qui semble encore confirmer mon intuition.
> [...]
Or justement, il y a une différence entre tes deux systèmes :
<cit. http://XXXXXXXXXXX/phpinfo/> open_basedir no value no value </>
Est-ce que tes fichiers sont bien sous /var/www ou un autre répertoire accessible ?
Oui, oui... enfin ils n'étaient donc pas accessibles à php. Et maintenant que j'ai supprimé cette directive, mes scripts qui tapaient dans /proc sont eux-aussi retombés en marche.
Merci à toi.
PS : Puis-je te demander de superseder ton article pour éviter l'archivage en clair de l'adresse de mon site ? (C'est fou le nombres de routeurs qui chauffent entre la Chine et ma Freebox ;-)
-- Les hommes ont peut-être découvert le feu mais les femmes ont appris à jouer avec... Hugo (né il y a 1 488 925 983 secondes)
Oups ! Désolé. J'avais bien supposé que tu utilisais tinyurl pour l'anonymat, mais j'ai oublié au moment de répondre et j'ai juste copicollé les URL depuis le navigateur.
PS : Puis-je te demander de superseder ton article pour éviter l'archivage en clair de l'adresse de mon site ?
J'ai fait un cancel, c'était plus rapide avec mon clicodrome, et surtout plus rapide que de devoir passer par l'étape de la modération.
Oups ! Désolé. J'avais bien supposé que tu utilisais tinyurl pour
l'anonymat, mais j'ai oublié au moment de répondre et j'ai juste
copicollé les URL depuis le navigateur.
PS : Puis-je te demander de superseder ton article pour éviter
l'archivage en clair de l'adresse de mon site ?
J'ai fait un cancel, c'était plus rapide avec mon clicodrome,
et surtout plus rapide que de devoir passer par l'étape de la
modération.
Oups ! Désolé. J'avais bien supposé que tu utilisais tinyurl pour l'anonymat, mais j'ai oublié au moment de répondre et j'ai juste copicollé les URL depuis le navigateur.
PS : Puis-je te demander de superseder ton article pour éviter l'archivage en clair de l'adresse de mon site ?
J'ai fait un cancel, c'était plus rapide avec mon clicodrome, et surtout plus rapide que de devoir passer par l'étape de la modération.
Cordialement, -- Olivier Miakinen
Hugolino
Le 01-07-2011, Olivier Miakinen <om+ a écrit :
Le 01/07/2011 10:07, Hugolino m'a répondu :
> PS : Puis-je te demander de superseder ton article pour éviter > l'archivage en clair de l'adresse de mon site ?
J'ai fait un cancel, c'était plus rapide avec mon clicodrome,
Merci.
et surtout plus rapide que de devoir passer par l'étape de la modération.
Oops !! Je présente donc mes excuses aux modéros pour avoir doublé chacun de mes deux précédents messages ;-))
--
La pile réseau a été profondément modifiée pour permettre le support des queues multiples.
Ça veut dire qu'on surfe plus vite sur les sites de gang-bang ?? Hugo (né il y a 1 488 963 363 secondes)
Le 01-07-2011, Olivier Miakinen <om+news@miakinen.net> a écrit :
Le 01/07/2011 10:07, Hugolino m'a répondu :
> PS : Puis-je te demander de superseder ton article pour éviter
> l'archivage en clair de l'adresse de mon site ?
J'ai fait un cancel, c'était plus rapide avec mon clicodrome,
Merci.
et surtout plus rapide que de devoir passer par l'étape de la
modération.
Oops !!
Je présente donc mes excuses aux modéros pour avoir doublé chacun de mes
deux précédents messages ;-))
--
La pile réseau a été profondément modifiée pour permettre le support
des queues multiples.
Ça veut dire qu'on surfe plus vite sur les sites de gang-bang ??
Hugo (né il y a 1 488 963 363 secondes)