Impedire l’accesso alle cartelle associate agli addon domain con htaccess [technical]

Come impostare htaccess per far si che la cartelle associate ai sottodomini (addon domain) non siano raggiungibili dal dominio principale: ovvero come evitare di pubblicare contenuti duplicati.


Attraverso il mio webserver semidedicato, ho la possibilità di gestire i siti dei miei clienti, puntando i lori domini sul mio server ed associando al dominio cliente una cartella sul mio server.

Questa procedura crea degli addon domain, ovvero dei domini che risultano accessibili da più url.

La procedura standard per creare un addon domain infatti, crea anche un dominio di terzo livello del dominio principale, da cui si può accedere ai contenuti della cartella associata.

In pratica, se io registro “miodominio.com” e creo via cpanel un addon domain sul mio web server associando “miodominio.com” alla cartella “mioserver/public_html/miodominio”, viene creato anche un dominio di terzo livello, per cui il sito residente nella cartella associata sarà raggiungibile da

  • miodominio.com
  • mioserver.com/miodominio
  • miodominio.mioserver.com

E questo non mi va!

I siti residenti sulla cartella “miodominio” infatti verrebbero pubblicati tre volte, rischiando di essere penalizzati dal punto di vista della SEO

È pur vero che i crawler dei motori di ricerca non potrebbero raggiungere la cartella “miodominio”, poichè sul dominio principale non è presente alcun link ad essa.

In ogni caso ho la pretesa che nessun utente possa percorrere una strada diversa da quella che ho scelto per arrivare al sito del cliente, ovvero il nome del dominio.

Ho fatto diverse ricerche in rete ma, tra le varie soluzioni trovate,  nessuna soddisfaceva la mia esigenza.

Il consiglio più diffuso infatti è quello di implementare in htaccess delle regole di reindirizzamento e riscrittura affinché le ‘url mioserver.com/miodominio e miodominio.mioserver.com siano reindirizzata su miodominio.com.

Ma non vedo perché dovrei avere un redirect di una cartella o di un sottodominio verso un sito che nulla ha a che fare col mio…

Preferisco che un’eventuale errore nel percorrere la strada porti l’utente su una pagina non trovata (404).

Se l’utente digita mioserver.com/miodominio deve avere come risultato un errore 404 restituito dal sito sul dominio principale.

La soluzione, forse, è la più semplice.

Ho ottenuto il risultato desiderato scrivendo sul file htaccess del dominio principale la seguente regola, per ogni cartella associata ad un dominio addon:

RewriteEngine On
Redirect /midominio http://mioserver/non-trovata
Sul mio server gira wordpress che, alla richiesta della pagina “non-trovata” (che in effetti non esiste) restituirà l’errore 404.