Visualizzazione dei risultati da 1 a 9 su 9
  1. #1

    Funzione is_dir e filesystem Linux

    Ciao.
    Certo di non essere il massimo esperto ne di PHP ne di Linux, perchè i filesystem non vengono riconosciuti dalla funzione is_dir ?

    Pensavo di aver scritto il codice in modo errato, ma mi fa vedere tutte le cartelle escluse quelle che sono definite come filesystem Linux esterno; questo il df -k

    Codice PHP:
    [root@stvtsm005px /]# df -k
    Filesystem           1K-blocks      Used Available Use% Mounted on
    /dev/mapper/vg_00-root_lv
                           8063408   3086920   4566888  41
    % /
    /
    dev/sda1               194442     21367    163036  12% /boot
    none                   2074548         0   2074548   0
    % /dev/shm
    /dev/mapper/vg_00-brio_lv
                         154818540     94508 146859712   1
    % /brio 
    Qualcuno mi saprebbe aiutare ?

    Grazie.
    Ciao

  2. #2
    Utente di HTML.it L'avatar di gianiaz
    Registrato dal
    May 2001
    Messaggi
    8,027
    In che senso scusa?

    Innanzitutto che server stai usando windows o linux?

    Le directory in genere non hanno filesystem, ma se mai è il disco (o la partizione) nel quale risiedono ad avere filesystem.

    Se ad esempio hai come sistema operativo windows su C, e hai una partizione D nella quale hai installato linux, e hai formattato quella partizione con filesystem ext3 o reiser (tipiche di linux) non è php che non è in grado di leggere la partizione D, ma proprio windows. (infatti non dovresti essere in grado se non attraverso qualche programma di terze parti di leggere la partizione nemmeno dall'esplora risorse di windows).

    Spero di aver capito, altrimenti chiarisci meglio la situazione

    ciao

  3. #3
    Ciao.
    Sono su una macchina Linux RedHat4, su cui utilizzo LVM (Logical Volume Manager)

    Ho un filesystem su LVM che monto in /brio:
    Codice PHP:
    /dev/mapper/vg_00-brio_lv on /brio type ext3 (rw
    Da codice php la funzione is_dir("/brio/") mi risponde FALSE.
    Se da codice php faccio la lista del contenuto di / , nell'elenco non viene visualizzato /brio.

    Spero di essere stato più chiaro
    Grazie

  4. #4
    Utente di HTML.it L'avatar di gianiaz
    Registrato dal
    May 2001
    Messaggi
    8,027
    cosa mostra :

    codice:
    ls -la | grep brio
    da utente root ?

    ciao

  5. #5

  6. #6
    Utente di HTML.it L'avatar di gianiaz
    Registrato dal
    May 2001
    Messaggi
    8,027
    In effetti guardando i permessi non sembra ci siano inghippi.

    Ammetto la mia ignoranza su LVM, quindi magari ti do dei consigli errati, ma se ti logghi come utente con il quale gira apache, riesci a visualizzare la directory?

    Ciao

  7. #7
    Guardando l'error_log di Apache ho questo messaggio:
    Codice PHP:
     PHP Warning:  is_dir(): Stat failed for /brio/ (errno=13 Permission deniedin /var/www/html/brio/index.php on line 47 
    ho anche dato 777 a /brio ma .. niente da fare ... AIUTOOOOOOOOOOOOO !!!

  8. #8
    Utente di HTML.it L'avatar di gianiaz
    Registrato dal
    May 2001
    Messaggi
    8,027
    non è che per usare LVM l'utente deve essere in un gruppo particolare?

    ciao

  9. #9
    Scoperto l'arcano.
    Il problema era dato dalla presenza di SElinux (controllore di accessi fatto dal kernel) che bloccava l'accesso al filesystem da httpd.
    Disabilitato e riavviata la macchina tutto funziona !!

    Ringrazio gianiaz per la disponibilità

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.