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

    funzione exec() non ha i permessi!

    Ciao a tutti,
    ho un problema con la funzione exec(), dalla pagina in php mando questo comando:

    Codice PHP:
    exec("mkdir Prova"); 
    Ma non viene eseguito. Infatti se poi vado a controllare i file di log di Apache riscontro il seguente errore:

    mkdir: cannot create directory `/Prova': Permission denied

    Qualcuno sa dirmi qualcosa riguardo i permessi o magari addirittura come mai non effettua questa semplice operazione???
    grazie in anticipo!...

  2. #2
    Utente di HTML.it L'avatar di Virus_101
    Registrato dal
    Sep 2008
    Messaggi
    2,497
    scusa ma usare le funzioni std di php no ?

    Codice PHP:

    $dir 
    "./mydir" ;
    $newDir $dir."/subdir" ;

    if( 
    file_exists($dir) && is_dir($dir) )
    {
        
    chmod($dir "777") ;
        
    mkdir$newDir ) ;


    Facendo una cosa del genere ?

  3. #3

    Re: funzione exec() non ha i permessi!

    Originariamente inviato da soniettabrasile
    mkdir: cannot create directory `/Prova': Permission denied
    il motivo c'è scritto ... /Prova è una cartella che vuoi creare sulla ROOT della gerarchia delle directory e ci vogliono i permessi di root: dubito che apache sia in esecuzione come root (ed è una cosa buona e saggia)

    Comunque tra quello scritto nei log e il tuo codice postato c'è discordanza: uno dei due è sbagliato ... ho fai mkdir /Prova e non mkdir Prova oppure il log è riportato sbagliato
    The fastest Redis alternative ... cachegrand! https://github.com/danielealbano/cachegrand

  4. #4
    provato...ma niente! non crea comunque la cartella... non capisco proprio il perchè....ufff...

  5. #5
    Originariamente inviato da soniettabrasile
    provato...ma niente! non crea comunque la cartella... non capisco proprio il perchè....ufff...
    provato a fare cosa?
    The fastest Redis alternative ... cachegrand! https://github.com/danielealbano/cachegrand

  6. #6
    scusa non avevo ancora visto il tuo messaggio, avevo provato a utilizzare il codice datomi in precedenza!
    ti posto esattamente il codice

    Codice PHP:
    exec("mkdir "$uploaddir $_POST['azienda']); 
    dove $uploaddir contiene il path completo dove mettere i file. Il file di log è proprio quello!
    Il mio lavoro comunque è stato quello di rimodificare un sito già esistente, ho cambiato solo l'interfaccia grafica...e ho copiato le funzioni pari passo...e mi da tutti questi problemi!Che non credevo potessero venire fuori dato che non ho toccato niente del codice php!
    Comunque ho appena controllato e tutte le pagine che ho creato io hanno come utente root, mentre quelle del vecchio sito ne hanno un altro!
    Quindi secondo te il problema è modificare l'utente delle nuove pagine?
    Un altra domanda, attualmente sto utilizzando un subdirectory del sito per poter fare tutte le mie prove, esempio www.miosito.it/prova forse è anche per questo che nn funziona?
    grazie!

  7. #7
    scusa non avevo ancora visto il tuo messaggio, avevo provato a utilizzare il codice datomi in precedenza!
    ti posto esattamente il codice

    Codice PHP:
    exec("mkdir "$uploaddir $_POST['azienda']); 
    dove $uploaddir contiene il path completo dove mettere i file. Il file di log è proprio quello!
    Il mio lavoro comunque è stato quello di rimodificare un sito già esistente, ho cambiato solo l'interfaccia grafica...e ho copiato le funzioni pari passo...e mi da tutti questi problemi!Che non credevo potessero venire fuori dato che non ho toccato niente del codice php!
    Comunque ho appena controllato e tutte le pagine che ho creato io hanno come utente root, mentre quelle del vecchio sito ne hanno un altro!
    Quindi secondo te il problema è modificare l'utente delle nuove pagine?
    Un altra domanda, attualmente sto utilizzando un subdirectory del sito per poter fare tutte le mie prove, esempio www.miosito.it/prova forse è anche per questo che nn funziona?
    grazie!

  8. #8
    risolto!
    erano i permessi di quel file!!! dovevo settarli rispetto a quello di apache!
    grazie mille per le risposte!

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 © 2025 vBulletin Solutions, Inc. All rights reserved.