1000 FAQ, 500 tutorial e video esplicativi. Qui ci sono delle soluzioni!
Capire CHMOD (permessi dei file sul server)
Questa guida dettaglia CHMOD (abbreviazione di change mode) che permette di modificare i permessi di accesso di un file o di una directory.
Modificare i permessi FTP
I diritti (consultate questa guida Wikipedia) disponibili per ogni persona/gruppo sono i seguenti:
- lettura: consente di elencare (richiede anche il diritto di esecuzione) e leggere in una directory e/o leggere un file
- scrittura: consente di creare, modificare, rinominare, eliminare file e/o directory
- esecuzione: per una directory: consente di attraversarla per leggere le sue sottodirectory -> Per un file: consente di eseguirlo se è un programma o uno script, ad esempio.
- set uid (?): su un file con i diritti di esecuzione, questo avrĂ l'effetto di eseguirlo con i diritti del proprietario se utilizza la chiamata di sistema execve o setuid
- set gid (?): tutti i nuovi file creati appartengono al gruppo della directory e su un file con i diritti di esecuzione avrĂ l'effetto di eseguirlo con i diritti del gruppo
- sticky bit (?): su una directory, i file della directory possono essere rinominati o eliminati solo dal proprietario, anche se gli altri utenti hanno il diritto di scrittura. Diritto non molto utile sui file
Il gestore file FTP Manager consente di modificare i permessi dei file (incluso quello di /web
).
La maggior parte dei software/client FTP consente di modificare i permessi di accesso ai file; la funzione si chiama generalmente "CHMOD" e si trova sotto "ProprietĂ ", "Permessi" o "Attributi" (di solito facendo clic destro sul file o sulla cartella da modificare). Una casella consente spesso di applicare le autorizzazioni a tutte le sottocartelle e i file nella cartella, in modalitĂ ricorsiva.
Quando avete selezionato le autorizzazioni di vostro interesse, confermate e i diritti verranno modificati tranne quelli che non avete l'autorizzazione di modificare o piuttosto che l'utente con cui siete identificati non ha il diritto di modificare.
Esempio con FileZilla:
Saperne di piĂą
Quando si parla di modificare i permessi, di solito si tratta di fare un "chmod 777
", "chmod 666
" o altro. Quindi tre cifre di cui:
- Il primo corrisponde ai permessi del proprietario
- il secondo corrisponde ai diritti del gruppo
- Il terzo numero corrisponde ai diritti degli altri utenti.
E i diritti si suddividono come segue:
- "4" per il diritto di lettura (read)
- 2" per il diritto di scrittura (write)
- 1" per il diritto di esecuzione (execute)
Basta poi sommare questi numeri. Ad esempio, se vuoi tutti i diritti per il proprietario ma nessun diritto per gli altri, farai "chmod 700" (4 + 2 + 1 = 7). Se vuoi solo i diritti di lettura e scrittura per tutti (4 + 2 = 6), farai un "chmod 666".
Questi valori sono noti a qualsiasi buon software/client FTP, quindi avrete la possibilitĂ di inserire direttamente il numero nel vostro software/client FTP per cambiare i permessi.
Per modificare le autorizzazioni su file o directory in PHP, è possibile farlo anche con la funzione “chmod”, come nell'esempio seguente:
chmod ("/a_folder/a_file", 0755)
Nota che il valore da applicare deve essere in ottale, quindi lo zero davanti è obbligatorio. Fate attenzione se memorizzate il valore in una variabile, avrete un problema di tipo di dati che potete aggirare con la funzione octdec()
, come nell'esempio seguente:
$mode = 0755;chmod("a_folder/a_file", octdec($mode))