L’avviso “Non hai i permessi per caricare questo tipo di file” ti sta impedendo di caricare un file su WordPress? In questa guida ti spiego tutti i metodi per risolvere o aggirare il problema in modo che potrai trovare la soluzione migliore per le tue esigenze.
Iniziamo dal vedere quando si presenta questo errore e perché.
Table of Contents
Perché compare l’errore “Non hai i permessi per caricare questo tipo di file”?
L’avviso “Non hai i permessi per caricare questo tipo di file” viene visualizzato su WordPress quando si tenta di caricare un file non supportato.
In base alla versione di WordPress che stiamo usando e alla lingua impostata, potremo vedere uno di questi avvisi:
- Non hai i permessi per caricare questo tipo di file.
- Questo tipo di file non è consentito per motivi di sicurezza.
- Sorry, you are not allowed to upload this file type.
- Sorry, this file type is not permitted for security reasons.
Per motivi di sicurezza, infatti, WordPress ha delle impostazioni predefinite che servono a limitare la tipologia di file che si possono caricare.
In questa tabella c’è la lista dei file che si possono caricare su WordPress senza limitazioni.
Tipo di file | Estensione |
---|---|
Immagini | .jpg .jpeg .png .gif .ico |
Documenti | .pdf .doc, .docx .ppt, .pptx, .pps, .ppsx .odt .xls, .xlsx .psd |
Audio | .mp3 .m4a .ogg .wav |
Video | .mp4, .m4v .mov .wmv .avi .mpg .ogv .3gp .3g2 |
Come vedi ci sono diversi tipi di file tra cui le estensioni avif o svg per le immagini o i file woff per i font che non vengono accettati di default.
Visto che però ci possono essere casi in cui è utile caricare file con estensioni particolari, è bene sapere quali sono i metodi per superare questa limitazione e caricare altri tipi di file. Ed è proprio quello che andremo a vedere nel prossimo capitolo.
Come risolvere “Non hai i permessi per caricare questo tipo di file”
Ci sono diversi metodi che possiamo seguire per risolvere il problema di caricamento dei file di WordPress ed evitare l’errore “Non hai i permessi per caricare questo tipo di file”.
I primi due metodi che vedremo richiedono la modifica dei file di WordPress e consistono nel:
- attivare un’opzione nel file wp-config.php
- usare un filtro nel file functions.php.
Se non hai familiarità con la modifica dei file interni di WordPress, ti sarà utile sapere che puoi anche ottenere lo stesso risultato usando un plugin.
Per finire vedremo anche altre alternative per aggirare l’errore:
- aggiornare WordPress, ci sono casi in cui l’errore può dipendere da una versione obsoleta del CMS;
- caricare il file via FTP, caricando il file direttamente sul server non avrai limitazioni riguardo al tipo di file;
- convertire il file in uno dei formati consentiti;
- soluzione specifica per WordPress Multisite.
Nota: come dicevamo, alcune delle soluzioni che vedremo richiedono la modifica dei file di WordPress. Per questo motivo prima di provare una delle soluzioni possibili, è sempre consigliabile effettuare un backup del sito WordPress in modo da poter fare un ripristino in caso di errori.
Modificare il file wp-config.php
Una delle soluzioni per risolvere l’errore “Non hai i permessi per caricare questo tipo di file” è aggiungere un’opzione al file wp-config.php.
Questo metodo ci permette di disattivare le limitazioni sulla tipologia di file attraverso l’inserimento di una sola riga di codice. Come risultato potremo caricare tutti i tipi di file senza restrizioni.
Per modificare il file wp-config.php del tuo sito WordPress, la prima cosa da fare è accedere ai file del sito.
Puoi seguire due strade:
- collegarti al server via FTP attraverso un client come ad esempio FileZilla o Cyberduck;
- usare il file manager del pannello di controllo.
Ai fini di questa guida vedremo come fare tramite il file manager di cPanel.
Per prima cosa effettua l’accesso a cPanel e apri lo strumento “Gestione file”.
Il file wp-config.php si trova nella root del sito, in genere la cartella “public_html”. In alternativa puoi anche fare una ricerca per il file usando la barra in alto a destra.
Una volta individuato il file, clicca su di esso con il tasto destro del mouse e poi fai click su edit. Questo ti permetterà di modificare il file direttamente con l’editor del file manager.
A questo punto ci basta scorrere fino alla fine del file e inserire questa riga:
define('ALLOW_UNFILTERED_UPLOADS', true);
Ti basta copiare e incollare la direttiva assicurandoti di inserirla prima della riga conclusiva del file, vale a dire questa:
/* That's all, stop editing! Happy blogging. */
Ecco un esempio che ti mostra come fare:
Dopo aver inserito la direttiva, salviamo il file. A questo punto accediamo al back-end del nostro sito WordPress e saremo in grado di caricare tutti i tipi di file.
Nel nostro caso abbiamo notato che utilizzando questo metodo sarà possibile caricare i file seguendo questa procedura:
dal back-end di WordPress vai su Media > Aggiungi nuovo, quindi ricerca tra i file oppure trascina il file nell’area tratteggiata.
Se invece proviamo a caricare il file direttamente nella libreria (Media > Libreria) continuerà a comparire l’errore “Non hai i permessi per caricare questo tipo di file”.
Modificare il file functions.php usando il filtro Upload_Mimes
Un’alternativa al metodo che abbiamo appena visto, ci permette di consentire il caricamento di alcune estensioni specifiche, senza doverle abilitare tutte. In questo modo possiamo scegliere esattamente quali tipi di file consentire.
Per utilizzare questo metodo dobbiamo modificare il file functions.php del tema. Visto che quando un tema viene aggiornato tutti i file vengono sovrascritti, per evitare di perdere le modifiche si consiglia di creare prima un tema child.
Dopodiché si possono fare le modifiche al file functions.php del tema child anziché modificare direttamente i file del tema.
Per modificare il file functions puoi accedere ai file del sito dal file manager o con un client FTP. In questo esempio vedremo come fare tramite il file manager di cPanel.
Accediamo a cPanel e clicchiamo su “Gestione file”. Il file functions.php si trova all’interno delle cartella con il nome del tema, raggiungibile da: wp-content/themes/
Una volta individuato il file functions.php possiamo modificarlo, aggiungere questo codice e salvare:
function my_custom_mime_types( $mimes ) {
// Nuovi file consentiti.
$mimes['svg'] = 'image/svg+xml';
$mimes['avif'] = 'image/avif';
return $mimes;
}
add_filter( 'upload_mimes', 'my_custom_mime_types' );
Con il codice qui sopra possiamo consentire il caricamento dei file con estensione svg e avif.
Possiamo modificare il codice in base al tipo di file che vogliamo abilitare: ci basta inserirlo correttamente come viene specificato dallo standard dei Mime Types (attualmente chiamati Media Types).
Usare un plugin per caricare su WordPress altri tipi di file
Esiste un altro metodo per caricare su WordPress tipi di file che non sono consentiti normalmente: utilizzare un plugin che attivi questa funzione.
Ci sono diversi plugin tra cui:
- File Upload Types by WPForms;
- WP Extra File Types;
- Mime Types Plus (quest’ultimo ci permette anche di definire regole per singolo utente).
Andiamo a vedere come fare usando il plugin gratuito “File Upload Types“.
Cominciamo installando e attivando il plugin in questo modo:
1. Dal back-end di WordPress vai su Plugin > Aggiungi nuovo.
2. Usa la barra di ricerca per trovare ” File Upload Types”
3. Clicca su “Installa ora” in corrispondenza del plugin.
4. Clicca su “Attiva”.
Adesso clicchiamo su Impostazioni > File Upload Types per aprire le impostazioni del plugin.
In questa pagina vedremo una lista dei tipi di file ognuno accompagnato da descrizione, MIME Type ed estensione. Per abilitare il caricamento di un tipo di file ci basta aggiungere la spunta accanto ad esso e poi cliccare sul pulsante “Save Settings” in fondo alla pagina.
Possiamo anche usare la barra di ricerca per cercare un’estensione oppure aggiungere un tipo di file personalizzato se non presente nella lista. In quest’ultimo caso dovremo inserire descrizione, MIME type ed estensione del file per poi cliccare su pulsante “Save Settings” come vedi in questo esempio:
Dopo aver salvato le impostazioni vedremo le estensioni abilitate in cima alla lista. Per disattivarle ci basta rimuovere la spunta e cliccare sempre su “Save Settings”.
Aggiornare WordPress
In alcuni casi l’errore “Non hai i permessi per caricare questo tipo di file” o “Sorry, this file type is not permitted for security reasons.” può essere dovuto all’utilizzo di una versione obsoleta di WordPress.
A partire da WordPress 5.0.1 è stato inserito un controllo per i MIME type dei file CSV e solo i file con MIME type “text/csv” venivano accettati, sebbene ci siano anche file CSV con tipo “text/plain”. Questo problema è stato risolto con l’aggiornamento di WordPress 5.0.3.
Quindi se stai utilizzando una versione precedente di WordPress, vale la pena verificare se sia il caso di aggiornare per risolvere l’errore.
Caricare i file via FTP
Se non puoi o non vuoi utilizzare i metodi precedenti, un’altra alternativa è quella di caricare i file su WordPress via FTP o attraverso il file manager del pannello di controllo.
In questo modo potrai caricare i file indipendentemente dall’estensione.
Il caricamento da file manager o via FTP è meno pratico rispetto a usare la libreria dei media di WordPress, ragione per cui questa soluzione può essere indicata se devi caricare dei file raramente, negli altri casi può essere più vantaggioso usare uno degli altri metodi.
Convertire i file
Se l’errore “Non hai i permessi per caricare questo tipo di file” ti impedisce di caricare i file che vorresti su WordPress e non puoi procedere con una delle soluzioni che abbiamo visto finora, c’è ancora qualcosa che puoi fare.
Ad esempio se non sei l’amministratore del sito e quindi non puoi accedere ai file sul server e non hai i permessi per installare un plugin, un’alternativa possibile è quella di convertire il file in uno dei formati consentiti da WordPress.
Un esempio tipico è per le immagini: se hai un’immagine in un formato non accettato, per esempio .avif, puoi convertirla in uno dei formati riconosciuti come .jpg prima di caricarla su WordPress.
Cambiare le impostazioni per WordPress Multisite
Questo metodo può essere utilizzato da chi utilizza un’installazione di WordPress multisite.
WordPress multisite dispone di un’impostazione che ti permette di modificare i tipi di file consentiti da WordPress per il caricamento.
Ci basta andare su Impostazioni > Impostazioni network e scorrere fino alla sezione “Impostazioni caricamento file”. Qui vedremo la voce “Tipi di file che si possono caricare” e potremo aggiungere le estensioni consentite separate da uno spazio. In questo esempio ho aggiunto l’estensione “txt”.
Rivolgersi al supporto dell’hosting
Se utilizzando uno dei metodi precedenti continui a vedere l’errore “Non hai i permessi per caricare questo tipo di file”, allora è possibile che la restrizione sul tipo di file che puoi caricare non sia applicata solo da WordPress, ma sia stata impostata lato server per motivi di sicurezza.
In questi casi può essere utile contattare il supporto del proprio provider di hosting per capire se c’è una regola di questo tipo e trovare una soluzione.
Problemi di sicurezza
Abbiamo visto diversi metodi per risolvere il problema del tipo di file consentiti per il caricamento su WordPress. Ad ogni modo è bene sapere che c’è una ragione se alcuni tipi di file non sono consentiti di default ed è per migliorare la sicurezza del sito.
Se però hai necessità di modificare queste impostazioni per poter caricare tipi di file particolari, ci sono comunque degli accorgimenti che puoi seguire per limitare i rischi.
Abilita solo il caricamento dei tipi di file necessari: se devi solo caricare dei file svg, ad esempio, è rischioso abilitare il caricamento di tutti i tipi di file ed è consigliabili usare un metodo che ti permette di consentire di caricare solo quel tipo di file specifico. Per esempio potresti usare il filtro nel file functions o un plugin che ti permette di scegliere che tipi di file consentire.
Riduci la dimensione dei file che possono essere caricati. Abbiamo stilato una guida sulla dimensione massima di caricamento file su WordPress, puoi seguirla per vedere i diversi metodi per modificare questa impostazione.
Segui la regola del privilegio minimo (principle of least privilege): assicurati che gli utenti che hanno accesso al sito non abbiano più permessi di quelli strettamente necessari. In questo caso dovresti fare un controllo specifico sugli utenti che possono caricare file. Ci sono anche plugin come Mime Types Plus che ti permettono di consentire il caricamento di determinati file solo ad utenti specifici.
Conclusioni
L’errore “Non hai i permessi per caricare questo tipo di file” appare su WordPress ogni volta che si prova a caricare un file non consentito.
In alcuni casi può essere necessario fare un’eccezione e modificare le impostazioni di WordPress per caricare altri tipi di file. Ti abbiamo perciò mostrato diversi metodi per farlo in base alle esigenze, dalla modifica del file functions all’utilizzo di un plugin. Non dimenticare, però, di osservare i nostri consigli per la sicurezza.
Quale metodo hai usato per aggirare la limitazione di WordPress sui tipi di file? Facci sapere con un commento.
Lascia un commento