Se i permessi sono sbagliati, WordPress non può aggiornarsi, non puoi caricare immagini o, peggio, il tuo sito è vulnerabile agli hacker. Ecco come sistemare tutto in pochi minuti.
In Linux, i permessi sono rappresentati da 3 numeri (es. 755):
- Primo numero (Proprietario): Cosa puoi fare tu.
- Secondo numero (Gruppo): Cosa può fare il tuo team/server.
- Terzo numero (Pubblico): Cosa può fare il resto del mondo.
I numeri "magici" per WordPress:
755(Cartelle): Il proprietario fa tutto, gli altri leggono ed entrano nella cartella.644(File): Il proprietario legge e scrive, gli altri leggono solo.440o600(File sensibili): Massima restrizione per il file di configurazione.
Prima dei permessi, conta la proprietà. Se i file appartengono all'utente sbagliato, il server web (Apache o Nginx) non riuscirà a scriverci dentro.
Il comando chown (Change Owner) definisce chi è il "padrone" dei file.
Solitamente si usa così: chown -R utente:gruppo /percorso/
- Ubuntu/Debian (Apache): Spesso l'utente è
www-data. - CentOS/CPanel: Spesso l'utente è il tuo nome utente FTP.
Questa è la via più rapida. Collegati al tuo server via SSH, entra nella cartella principale di WordPress (es. cd /var/www/html) ed esegui questi tre comandi in ordine:
Sostituisci www-data:www-data con l'utente corretto del tuo server se diverso.
# Cambia il proprietario di tutto in modo ricorsivo (-R)
sudo chown -R www-data:www-data .
Non farlo a mano! Questo comando trova tutte le cartelle e applica il permesso corretto:
find . -type d -exec chmod 755 {} \;
Questo comando trova tutti i file e applica il permesso corretto:
find . -type f -exec chmod 644 {} \;
Se non ami il terminale, puoi usare un client SFTP come FileZilla:
- Connettiti al tuo sito.
- Vai nella cartella principale di WordPress.
- Seleziona tutti i file e cartelle, tasto destro -> Permessi file...
- Per le Cartelle:
- Valore numerico:
755 - Spunta "Includi sottocartelle"
- Seleziona "Applica solo alle cartelle"
- Clicca OK.
- Per i File:
- Seleziona di nuovo tutto, tasto destro -> Permessi file...
- Valore numerico:
644 - Spunta "Includi sottocartelle"
- Seleziona "Applica solo ai file"
- Clicca OK.
Il file wp-config.php contiene la password del tuo database. Deve essere blindato.
Via SSH:
chmod 600 wp-config.php
(In alcuni server è necessario 640 o 644 se ricevi un errore 500, ma prova prima 600).
| Risorsa | Permesso Consigliato | Perché? |
|---|---|---|
| Cartelle | 755 |
Permette a WP di creare sottocartelle e plugin. |
| File | 644 |
Permette la lettura ma impedisce modifiche esterne. |
| wp-config.php | 600 / 640 |
Impedisce ad altri utenti del server di leggere le password. |
| .htaccess | 644 / 640 |
Protegge le regole di reindirizzamento. |
| wp-content | 755 |
Necessario per caricare immagini e temi. |
"Non riesco a caricare immagini (Errore permessi)":
Controlla il chown. Molto probabilmente i file appartengono a root o a un utente diverso da quello che usa il server web. Esegui il comando del punto 3A.
"WordPress chiede i dati FTP per aggiornare i plugin":
Questo accade quando WordPress non ha i permessi di scrittura diretti.
Risolvi aggiungendo questa riga nel file wp-config.php:
define('FS_METHOD', 'direct');Nota: usa questo metodo solo se hai impostato correttamente il chown come spiegato sopra.
"Errore 500 dopo il cambio permessi":
Alcuni server (spesso in hosting condiviso con SuPHP) non accettano permessi troppo larghi (come 777). Non usare mai 777. Se hai errore 500, assicurati che le cartelle siano 755 e i file 644.