
🔐 Permessi corretti per file e cartelle di WordPress: una guida completa a 755 e 644
Hai spostato il sito su un hosting e i plugin hanno smesso di installarsi. Oppure i file media non vengono caricati tramite il pannello di amministrazione. O un aggiornamento del core fallisce con "Could not create directory". Ti suona familiare?
La causa è quasi sempre la stessa: permessi di file e cartelle errati. Un server locale (OpenServer, MAMP) gira con l'utente corrente di Windows/macOS e perdona tutto. Un hosting Linux di produzione no. Ogni file e directory ha un proprietario e tre livelli di permessi, e se il server web non può scrivere nella cartella richiesta, il sito si rompe in silenzio o con un errore criptico.
Qui sotto trovi cosa significano realmente 755 e 644, come impostarli una volta sola tramite FileZilla per l'intero sito e quali file richiedono un trattamento speciale.
💡 Panoramica rapida:
- Cosa significano i numeri 755 e 644 e perché 777 è una falla di sicurezza
- Come impostare i permessi in massa con FileZilla in 2 passate: prima le cartelle, poi i file
- Quali permessi richiedono wp-config.php, .htaccess e la cartella wp-content
- Come fare la stessa cosa via SSH con un solo comando in 5 secondi
Cosa significano i permessi e perché 777 è un disastro
Ogni file e cartella su un server Linux memorizza tre set di permessi: per il proprietario, per il gruppo e per tutti gli altri. Il numero è una somma di bit: 4 (lettura) + 2 (scrittura) + 1 (esecuzione, che per le cartelle significa potervi accedere).
755 per le cartelle si scompone così: il proprietario può fare tutto (7), il gruppo e gli altri possono leggere e accedere (5). La cartella è accessibile al server web per la scansione e la creazione di file e sottocartelle al suo interno, ma nessun estraneo può eliminarla o rinominarla.
644 per i file: il proprietario può leggere e scrivere (6), gli altri possono solo leggere (4). I file PHP sono eseguiti dall'interprete, non dal sistema, quindi non hanno bisogno del bit di esecuzione.
777 (proprietario+gruppo+altri = tutto) è una porta aperta. Qualsiasi processo sul server, inclusi script di siti vicini su hosting condiviso, può leggere, modificare ed eliminare i tuoi file. Secondo i dati WPScan del 2025, i permessi errati sono tra i primi cinque vettori di attacco WordPress più comuni su hosting condiviso. Non impostare mai 777. Se un plugin o un tema richiede tali permessi, è un campanello d'allarme.
Quali permessi WordPress considera corretti
La documentazione ufficiale di WordPress definisce i permessi raccomandati come segue:
Risorsa | Permessi | Perché |
|---|---|---|
Cartelle (tutti i livelli di annidamento) | 755 | Il server web deve accedere e creare file al loro interno |
File.php,.js,.css e file media | 644 | Leggibili da tutti, scrivibili solo dal proprietario |
| 600 o 440 | Contiene le password del database, leggibile solo dal proprietario |
| 644 | Letto da Apache ma non dovrebbe essere accessibile esternamente |
Sulla maggior parte degli host, il proprietario del filesystem corrisponde all'utente con cui gira PHP (configurazione suPHP/FastCGI + suEXEC). In questo setup, i permessi 755/644 sono sufficienti: WordPress può scrivere in wp-content/uploads, aggiornare il core e i plugin e installare temi senza dover elevare a 777.
Verifica se questo vale per il tuo host: vai nel pannello di amministrazione e prova a installare un qualsiasi plugin gratuito. Se si installa senza chiedere credenziali FTP, lo schema 755/644 funziona e i permessi sono già corretti.
Come impostare i permessi tramite FileZilla: passo dopo passo
FileZilla è un client FTP gratuito che può modificare i permessi in modo ricorsivo e in massa. Scaricalo dal sito ufficiale se non lo hai già fatto.
Passo 1: connettiti e naviga fino alla root di WordPress
Connettiti al tuo hosting via FTP (login/password sono gli stessi del tuo account hosting, porta 21). Nel pannello di destra, naviga fino alla cartella root del sito, dove si trovano wp-config.php, wp-content, wp-admin e wp-includes.
Passo 2: imposta 755 su tutte le cartelle
Seleziona tutti i file e le cartelle nella root (Ctrl+A). Tasto destro → "Permessi file".

Nella finestra che si apre, inserisci 755 nel campo "Valore numerico". Spunta la casella "Ricorsione nelle sottodirectory". Imposta il pulsante di opzione su "Applica solo alle directory". Clicca OK.

FileZilla esaminerà ogni cartella e sottocartella del sito e imposterà 755. Il processo richiede da pochi secondi a un paio di minuti a seconda della dimensione del sito.
Passo 3: imposta 644 su tutti i file
Seleziona di nuovo tutto nella root (Ctrl+A), di nuovo tasto destro → "Permessi file".
Ora inserisci 644. Spunta "Ricorsione nelle sottodirectory". Imposta il pulsante di opzione su "Applica solo ai file". OK.

Fatto. Due passate (cartelle e file) e l'intero sito è riportato allo standard.
Metodo rapido via SSH: il comando find
Se hai accesso SSH al server, la stessa operazione richiede due comandi e cinque secondi:
1 find /path/to/wordpress -type d -exec chmod 755 {} \; 2 find /path/to/wordpress -type f -exec chmod 644 {} \;
Il primo esamina tutte le cartelle (-type d) e imposta 755. Il secondo esamina tutti i file (-type f) e imposta 644. Sostituisci /path/to/wordpress con il percorso reale della root del tuo sito (di solito /home/username/public_html).
Dopodiché, restringi separatamente wp-config.php:
1 chmod 600 /path/to/wordpress/wp-config.php
E .htaccess, se ne hai uno (server Apache):
1 chmod 644 /path/to/wordpress/.htaccess
Se il tuo sito gira su Nginx, non c'è il file .htaccess, quindi salta questo passaggio.
Cosa fare se i permessi vengono resettati
Situazione: hai impostato 755/644, tutto funzionava e una settimana dopo ricevi lo stesso errore. La causa è di solito un processo che gira con un utente diverso.
Colpevoli tipici:
- Cron job dell'hosting. Alcuni host eseguono script di manutenzione come root e creano file con permessi che il server web non può poi sovrascrivere. Soluzione: chiedi al supporto di configurare il cron per essere eseguito con il tuo utente.
- Plugin di backup di terze parti. Scrive dump e archivi in
wp-contentcon l'utente con cui viene eseguito. Controlla i log del plugin. Se crea file con un utente diverso dal proprietario del sito, passa a un'alternativa. - Plugin di caching. Crea cartelle di cache con permessi errati. Vai nelle impostazioni del plugin e trova il pulsante "Svuota cache" o "Resetta permessi".
Soluzione rapida universale: ripeti la procedura della sezione precedente (FileZilla in 2 passate o due comandi find). Questo non risolverà la causa principale ma riporterà il sito in condizioni di funzionamento.
⁉️🤔 Domande frequenti
Cosa succede se il sito va in "schermata bianca della morte" dopo aver cambiato i permessi?
Una schermata bianca (WSOD) dopo modifiche massive dei permessi è estremamente rara ma possibile. Primo: attiva
WP_DEBUGinwp-config.phpcosì vedrai il testo dell'errore invece di una schermata bianca. Secondo: controlla se hai accidentalmente impostato 644 sulle cartelle (le cartelle hanno bisogno del bit di esecuzione, cioè 5 alla fine). Correggi con un comandofind:find /path -type d -exec chmod 755 {} \;. Nella maggior parte dei casi questo basta. Se il sito ancora non funziona, ripristina da backup e modifica i permessi gradualmente: prima suwp-content, poi sulla root, osservando le reazioni.
Posso impostare i permessi tramite il file manager integrato dell'hosting?
Sì, ma solo per singoli file e cartelle. Gli host cPanel forniscono un File Manager con "Cambia permessi" nel menu contestuale. Tuttavia, impostare ricorsivamente i permessi su centinaia o migliaia di file tramite interfaccia web è praticamente impossibile. Per operazioni massive, usa FileZilla o SSH.
Che permessi dovrebbe avere la cartella wp-content/uploads?
755 standard, come tutte le altre cartelle. Se un plugin o un tema crea sottocartelle dentro
uploadse ha problemi, controlla il proprietario del processo (dovrebbe corrispondere al proprietario della cartella) invece di alzare i permessi a 777. A volte il problema si risolve aggiungendodefine('FS_METHOD', 'direct');awp-config.php.
Devo impostare i permessi sui file dentro wp-admin e wp-includes?
Sì, 644 standard per i file e 755 per le cartelle, come per il resto del sito. La procedura di FileZilla (selezionando tutto nella root) li gestisce automaticamente.
Il mio host richiede 777 su alcune cartelle. È normale?
No. Richiedere 777 è un segno che PHP sul server gira con un utente diverso dal proprietario dei file (ad esempio, mod_php senza suEXEC). In questa configurazione, WordPress non può scrivere sulle cartelle senza accesso "world". Opzioni: passa a un host che usa suPHP/FastCGI (la maggior parte di quelli moderni lo fa), oppure aggiungi
define('FS_METHOD', 'direct');awp-config.php, che a volte è sufficiente.
I permessi corretti sono una base, non un'opzione
Impostare 755 sulle cartelle e 644 sui file chiude il canale più comune per gli errori "misteriosi" quando si migra un sito. Due minuti in FileZilla o due comandi SSH fanno risparmiare ore di congetture sui log.
Se il tuo sito è su un buon hosting con suPHP/FastCGI, questi permessi sono sufficienti per tutto: installare plugin, caricare media e aggiornamenti automatici del core. Non elevare i permessi a 777, anche se le istruzioni di un vecchio plugin lo richiedono. E aggiungi wp-config.php come voce separata: chmod 600. Contiene la password del database e gli estranei non devono avervi accesso.



