
🛡 Come disabilitare l'hotlinking in WordPress
Immagina di accedere al pannello di hosting e scoprire che il traffico mensile è raddoppiato. I visitatori non sono aumentati, le vendite non sono cresciute, eppure la fattura del server è arrivata con un importo doppio del solito. Ti suona familiare? È un classico scenario di hotlinking.
Qualcuno ha incorporato l'URL di una tua immagine nel proprio sito. L'immagine viene caricata dal loro lato, ma il traffico lo paghi tu. Per i progetti editoriali e di contenuti su WordPress, l'hotlinking è tra le prime 5 voci nascoste che prosciugano il budget dell'hosting.
Ecco sette metodi efficaci per bloccare il furto di immagini: dalla configurazione rapida via .htaccess ai plugin e alla CDN. Ogni metodo è stato testato sulle versioni attuali di WordPress e funziona senza modifiche al core.
💡 Panoramica rapida:
- Come funziona l'hotlinking, perché è pericoloso e quanto traffico stai perdendo senza accorgertene
- Tre metodi di blocco lato server:.htaccess (Apache/LiteSpeed), configurazione NGINX e lo strumento integrato di cPanel
- Il plugin All-In-One Security (AIOS): attivare la protezione hotlink con un solo flag, più firewall e protezione contro gli attacchi brute-force
- Cloudflare Hotlink Protection: filtro a livello di CDN senza caricare WordPress, piano gratuito
- Disabilitare il tasto destro: un plugin come barriera aggiuntiva contro la copia occasionale degli URL delle immagini
- Trovare le immagini rubate tramite Google Immagini: un audit di un minuto e tre modi per gestire i trasgressori
Cos'è l'hotlinking e perché è pericoloso
L'hotlinking consiste nell'incorporare l'URL diretto di una tua immagine nel sito di qualcun altro. Il browser del visitatore di quel sito recupera l'immagine dal tuo server, non dal server del proprietario. Visivamente l'immagine appare normale, ma ogni visualizzazione consuma la tua banda e le tue risorse CPU.

Il problema principale non è il "furto" in sé. L'immagine rimane fisicamente sul tuo server e il copyright non viene formalmente violato. Ma ogni visualizzazione esterna consuma banda che hai pagato al provider di hosting. Per un sito su un hosting condiviso economico con un limite di traffico di 10-25 GB, un solo post popolare con un'immagine che si diffonde su una dozzina di piattaforme può esaurire la tua quota mensile in tre giorni.
La seconda minaccia è il carico sulla CPU. Con un traffico elevato sul sito che abusa delle tue immagini, il tuo server gestisce due fronti: i tuoi visitatori e i loro. Il risultato sono tempi di caricamento più lenti e un peggioramento dei Core Web Vitals.
Come disabilitare l'hotlinking in WordPress
Ci sono sette metodi, dal lato server a quelli basati su plugin. Scegli in base al tuo livello di accesso: hai un hosting con cPanel, quale web server usi (Apache o NGINX) e sei disposto a modificare i file di configurazione.
1. Blocco tramite file.htaccess
Il file .htaccess è il gestore principale della configurazione per Apache e LiteSpeed. Attraverso di esso, puoi proibire il caricamento delle immagini da qualsiasi dominio eccetto il tuo e i motori di ricerca. Svantaggio: questo metodo non funziona su server NGINX.
Per accedere al file, connettiti al server via FTP (ad esempio, tramite FileZilla) oppure apri il file manager nel pannello di hosting. Il file si trova nella cartella root del sito, insieme a wp-config.php.

Prima di qualsiasi modifica a .htaccess, fai un backup. Una parentesi o una direttiva fuori posto e il sito va giù con un errore 500. Dopo la modifica, apri il sito in un'altra scheda e verifica che sia attivo.
Copia questo blocco alla fine del file, sostituendo yourwebsite.com con il tuo dominio. Le regole respingono le richieste da tutti i referrer esterni, consentendo l'accesso a motori di ricerca e social network:
1 RewriteEngine On 2 RewriteCond %{HTTP_REFERER} !^$ 3 RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?yourwebsite\.com [NC] 4 RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?google\.com [NC] 5 RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?bing\.com [NC] 6 RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?facebook\.com [NC] 7 RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?twitter\.com [NC] 8 RewriteRule \.(jpg|jpeg|png|gif|webp|avif|svg)$ - [F]
Ecco cosa succede: RewriteCond controlla il referrer, cioè l'indirizzo della pagina da cui proviene la richiesta. Se il referrer è vuoto (prima riga), il tuo dominio, Google, Bing, Facebook o Twitter, la richiesta passa. Tutto il resto riceve un 403 Forbidden. L'ultima riga elenca i formati di file coperti dalla protezione (aggiunti i formati webp, avif e svg, rilevanti per il 2026).
Testare la regola è semplice: apri un'immagine del tuo sito tramite URL diretto in una nuova scheda. Dovrebbe aprirsi. Poi crea un semplice file HTML sul tuo computer locale con <img src="URL-of-your-image"> e aprilo. L'immagine non dovrebbe caricarsi.
2. Plugin All-In-One Security (AIOS)
Se le configurazioni server non fanno per te, installa un plugin. All-In-One Security (AIOS) (ex All in One WP Security & Firewall) blocca l'hotlinking con un semplice segno di spunta. Come bonus, ottieni un firewall, protezione brute-force e scansione delle vulnerabilità.

Dopo l'installazione e l'attivazione, vai su WP Security → Firewall → Prevent Hotlinks. Seleziona la casella "Prevent Image Hotlinking" e salva. Il plugin scrive automaticamente le regole necessarie in .htaccess, quindi non devi toccare il file manualmente.
Il vantaggio di AIOS è che non entra in conflitto con altre regole di .htaccess e aggiorna automaticamente la lista dei referrer consentiti quando cambi dominio. La versione gratuita è sufficiente per la protezione hotlink; quella premium aggiunge l'autenticazione a due fattori e il blocco per paese.
3. Cloudflare: protezione a livello di CDN
Cloudflare offre la Hotlink Protection già nel piano gratuito, e questo è l'approccio più elegante perché il traffico viene bloccato prima di raggiungere il tuo server.
Nel pannello Cloudflare: Security → Hotlink Protection → attiva l'interruttore su On. Tutto qui. Cloudflare inizia a controllare il referrer per ogni richiesta di immagine e blocca quelle esterne.
Il punto di forza di questo metodo è che non appesantisci WordPress né rischi di rompere .htaccess. Tutte le richieste vengono filtrate sui server edge di Cloudflare. Bonus: caching e compressione delle immagini tramite Polish (compressione lossy nel piano gratuito, lossless su Pro) funzionano simultaneamente.
Se il tuo sito usa già Cloudflare, attivare la Hotlink Protection richiede dieci secondi. In caso contrario, registrazione, modifica DNS e configurazione di base richiedono circa un'ora. Per i progetti già su Cloudflare, questo è il metodo numero uno.
4. CPanel: strumento Hotlink Protection integrato
I provider di hosting che usano cPanel (SiteGround, Namecheap, A2 Hosting e decine di altri) dispongono di uno strumento di protezione hotlink integrato. Trovarlo è semplice: nella dashboard di cPanel, cerca "Hotlink Protection" o trova l'icona nella sezione Security.

Passaggi per l'attivazione:
- Clicca su Enable per aprire la pagina con l'elenco dei domini consentiti
- Nel campo URLs to allow access, aggiungi il tuo dominio (cPanel lo compila automaticamente) e i sottodomini se necessario
- Nel campo Block direct access for the following extensions, sono elencati i formati di file sotto protezione; mantieni l'elenco predefinito o aggiungi
avif,webp - Allow direct requests: lascia vuoto se non vuoi concedere accesso diretto a file specifici
- Redirect request to: puoi specificare l'URL di un'immagine segnaposto che i ladri vedranno al posto della tua immagine. Ad esempio, un banner testuale con scritto "Questa immagine è stata rubata da sito.it". Oppure lascia vuoto e la richiesta riceverà semplicemente un 403
- Clicca su Submit
Per disattivare la protezione, usa il pulsante Disable nella stessa pagina.
5. Disabilitare il tasto destro
Questo non è hotlinking protection in senso stretto, ma piuttosto una barriera aggiuntiva. Il plugin Prevent Content Theft (Disable Right Click) disabilita il menu contestuale del browser sul tuo sito. I visitatori non possono cliccare «Copia URL immagine» perché non c'è fisicamente modo di ottenere l'indirizzo diretto dell'immagine.

Il plugin blocca non solo il tasto destro ma anche le scorciatoie da tastiera: Ctrl+C, Ctrl+U (visualizza sorgente), Ctrl+Shift+I (strumenti sviluppatore). La versione premium aggiunge protezione contro il trascinamento delle immagini e la selezione del testo. Puoi escludere pagine specifiche o ruoli utente (ad esempio, mantenere il tasto destro per gli amministratori).
Un avviso doveroso: questo metodo non fermerà chi sa aprire i DevTools dal menu del browser o visualizzare il sorgente della pagina. Ma blocca la stragrande maggioranza delle copie occasionali, ed è esattamente il pubblico che ruba le immagini con il principio «vedo, clicco, incollo».
Un'analisi più dettagliata della protezione dalla copia, inclusi metodi CSS e soluzioni lato server, è disponibile nella nostra guida su come disabilitare copia e tasto destro sui siti web.
6. Blocco su NGINX
NGINX non legge .htaccess; tutta la configurazione risiede nei file del server (nginx.conf o in file separati nella cartella sites-available). Solo l'amministratore del server ha accesso (VPS/server dedicato). Su hosting condiviso con proxy NGINX, questo metodo in genere non è disponibile.

Aggiungi quanto segue all'interno del blocco server { } per il tuo sito:
1 location ~* \.(gif|png|jpeg|jpg|svg|webp|avif)$ { 2 valid_referers none blocked ~\.google\. ~\.bing\. ~\.yahoo\. yourdomain.com ~\.yourdomain\.com; 3 if ($invalid_referer) { 4 return 403; 5 } 6 }
La direttiva valid_referers elenca chi è autorizzato: none (visite dirette e download senza referrer), blocked (referrer nascosto dal browser o dal proxy), i motori di ricerca e il tuo dominio con i sottodomini. Tutto il resto riceve un 403.
Dopo aver modificato la configurazione, verifica la sintassi (nginx -t) e ricarica il server (nginx -s reload o systemctl reload nginx). Un errore di configurazione farà cadere l'intero sito, quindi non applicare mai modifiche senza verifica della sintassi.
7. Blocco su Apache (configurazione diretta)
Su Apache, puoi andare oltre .htaccess e scrivere la protezione direttamente nella configurazione dell'host virtuale (httpd.conf o apache2.conf). La sintassi è la stessa di .htaccess, ma le regole si applicano a livello di server e non possono essere accidentalmente sovrascritte da un plugin o da un aggiornamento.

Vantaggi della configurazione diretta: le regole si applicano a tutti i siti sul server contemporaneamente, vengono eseguite più velocemente (il file di configurazione viene letto una volta all'avvio) e non possono essere cancellate accidentalmente via FTP. Lo svantaggio è ovvio: serve accesso alla configurazione del server, cosa che gli hosting economici non forniscono.
Per la maggior parte degli utenti WordPress, il metodo .htaccess (opzione 1) è più che sufficiente. La configurazione diretta di Apache ha senso per amministratori che gestiscono più siti su un singolo server.
Come trovare immagini rubate tramite Google Immagini
Puoi rilevare il furto di immagini attraverso segnali indiretti: crescita inspiegabile del traffico a parità di visitatori, calo della velocità di caricamento. Ma esiste un metodo diretto: la ricerca su Google.
Apri Google Immagini e inserisci:
1 inurl:yourwebsite.com -site:yourwebsite.com
Sostituisci yourwebsite.com con il tuo dominio. L'operatore inurl: trova tutte le pagine che menzionano il tuo URL, mentre -site: esclude le pagine del tuo stesso sito. Nei risultati restano solo i siti esterni che hanno incorporato link ai tuoi contenuti.
Un'alternativa è la ricerca inversa per immagini. Carica un'immagine sospetta su Google Immagini (icona della fotocamera nella barra di ricerca) e Google mostra tutte le pagine in cui compare quell'immagine. Questo metodo è più lento ma più preciso: vedi gli URL specifici dei trasgressori.
Trovato un ladro? Tre opzioni: una richiesta cortese di rimuovere l'immagine (funziona raramente), la sostituzione dell'immagine rubata sul tuo server con un placeholder contenente il tuo logo e un link (funziona in modo affidabile, il ladro mostra la tua pubblicità), oppure inviare un reclamo DMCA al provider di hosting del trasgressore.
Questo video di 8 minuti mostra il processo di configurazione della protezione hotlink tramite AIOS e .htaccess su un sito WordPress reale. L'autore accompagna dalla diagnosi alla verifica del risultato e spiega quali referrer inserire nella whitelist.
⁉️🤔 Domande frequenti
L'hotlinking danneggia la SEO?
Non direttamente. Google non penalizza i siti per il furto delle loro immagini. Indirettamente, sì: se l'hotlinking sovraccarica il server e i tempi di caricamento delle pagine aumentano, il posizionamento peggiora perché Core Web Vitals è un fattore di ranking ufficiale. Per il server, ogni visualizzazione esterna dell'immagine è indistinguibile dal tuo traffico.
Posso bloccare l'hotlinking solo per immagini specifiche?
Sì. Nelle regole
.htaccesse NGINX puoi specificare una cartella o un file particolare invece di un carattere jolly per tutte le immagini. Ad esempio,RewriteRule ^wp-content/uploads/premium/.*\.(jpg|png)$ - [F]protegge solo la cartella premium. I plugin di solito non offrono questa flessibilità: è tutto o niente.
Una filigrana aiuta contro l'hotlinking?
Una filigrana non impedisce tecnicamente l'hotlinking, si limita a marcare la paternità. Se un'immagine è incorporata tramite URL diretto, la filigrana sarà visibile sul sito esterno, il che è almeno un po' di pubblicità. Ma il traffico lo paghi comunque tu. È meglio combinare gli approcci: filigrana come protezione visiva più
.htaccesso CDN come protezione tecnica.
Cosa fare se il mio hosting non dà accesso a.htaccess e non c'è cPanel?
Imposta Cloudflare sul piano gratuito e attiva la Hotlink Protection. Cloudflare funziona sopra qualsiasi hosting, non richiede accesso alle configurazioni del server e risolve il problema a livello DNS. Un'alternativa è il plugin AIOS dalla directory di WordPress, che scrive su
.htaccessautomaticamente anche se non sai dove si trova quel file.
Bloccare l'hotlinking rompe le immagini sui social media e sui messenger?
Non con una configurazione corretta. Negli esempi sopra, Facebook, Twitter e i motori di ricerca sono aggiunti alla whitelist dei referrer. Se usi attivamente altre piattaforme (Pinterest, Telegram, Reddit), aggiungi i loro domini alle regole. Senza, le anteprime delle immagini quando condividi i tuoi link su social media e messenger spariranno effettivamente.
Protezione hotlink: quale metodo scegliere
La scelta si riduce a tre scenari. Se sei su Cloudflare, attiva la Hotlink Protection nel pannello: dieci secondi e una soluzione completa. VPS o server dedicato su NGINX: una regola nella configurazione del server, cinque righe. Hosting condiviso tradizionale su Apache con cPanel: lo strumento Hotlink Protection integrato nel pannello o il plugin AIOS con un singolo flag.
La difesa più affidabile combina gli approcci: Cloudflare o blocco lato server come barriera primaria, più Prevent Content Theft per disabilitare il menu contestuale. Uno non interferisce con l'altro e insieme bloccano sia gli embed diretti via URL sia la copia occasionale del "tanto per guardare".
Dedica dieci minuti oggi. Quando la prossima bolletta dell'hosting non ti sorprenderà con uno zero in più, capirai che questo è stato uno degli investimenti di tempo più redditizi nella sicurezza del sito.



