Creazione directory su server linux

Ciao a tutti,

in una pagina php ho un form per la creazione di cartelle su server.

nella pagina che elabora il form ho il codice seguente dove $new_dir è il path per la nuova directory e $nome è il nome della nuova dir che verrà creata, nome che è stato indicato nel form.

$new_dir = $_SERVER["DOCUMENT_ROOT"] . "/directory/$nome";
Mkdir($new_dir, 0777);

premetto che "directory" ha permessi 777.

la cartella viene creata in "directory" ma i suoi permessi non vengono settati a 777 come indicato in Mkdir, ma a 775.. quindi vengono presi i permessi di sicurezza del server e non quelli che passo io.. come posso fare?

più che altro il problema sta nel fatto che creo ste directory ma non riesco a cancellarle.. dice che non ho i permessi..

in realtà ho il dubbio che il problema sia proprio a monte..

queste cartelle possono essere CREATE e CANCELLATE da un solo utente: "admin", ma possono essere riempite da altri utenti...

cosa mi conviene fare?

grazie mille a tutti

inviato 8 anni fa
sonny
X 0 X

forse ho risolto:

$new_dir = $_SERVER["DOCUMENT_ROOT"] . "/archivosPDF/$nome";
mkdir($new_dir, 0777);

chmod("$new_dir", 0777);

secondo voi va bene, è corretto?

risposto 8 anni fa
sonny
X 0 X
più che altro il problema sta nel fatto che creo ste directory ma non riesco a cancellarle.. dice che non ho i permessi..

E' il comando remdir che ti genera l'errore?

:bye:

Zeta

risposto 8 anni fa
zeta80
X 0 X

ciao zeta,

 guarda con il codice seguente creavo la cartella ma andando a vedere con filezilla la cartella non aveva i permssi 777 ma 775.. quindi non mi prendeva ciò che volevo impostare io.. di conseguenza anche da filezilla non c'era verso di cancellare queste directory

$new_dir = $_SERVER["DOCUMENT_ROOT"] . "/archivosPDF/$nome";
mkdir($new_dir, 0777);

in seguito ho letto che funzioni come mkdir(), fopen(), touch() appartengono all'utente "nobody" quindi il server per sicurezza imposta i suoi permessi se ho ben capito..

quindi ora aggiungendo la riga sottostante, mi crea la cartella e setta correttamente i permessi a 777..

chmod("$new_dir", 0777);

secondo te è corretto o potrei fare di meglio?

risposto 8 anni fa
sonny
modificato 8 anni fa
X 0 X

Direi che è la soluzione corretta.

:bye:

Zeta

risposto 8 anni fa
zeta80
X 0 X
Effettua l'accesso o registrati per rispondere a questa domanda