Guida pratica .htaccess, risorse e campi d’azione terza parte

29 marzo 2012 , , , , ,
Guida pratica .htaccess, risorse e campi d’azione terza parteè stato aggiornato il 13 marzo 2013
Autore: Luciano Del Fico 0 Commenti
Posteshop

Eccoci giunti all’ultima guida su .htaccess, ricordo che è stata già pubblicata la prima e la seconda parte. Questa settimana parleremo di ulteriori campi d’azione, in particolare di: blocco bots, redirects, impedire la visualizzazione di htaccess, limitare l’uso di directory.

redirects

Blocco bots

Per acluni webmaster potrebbe essere necessario bloccare l’accesso a particolari bots, ritenuti “bots cattivi“, il metodo oltre che con il “robots.txt” può essere facilmente aggiunto con .htaccess, ad esempio con alcune righe di codice, come le seguenti:

RewriteEngine On 
RewriteCond %{HTTP_USER_AGENT} ^BlackWidow [OR] 
RewriteCond %{HTTP_USER_AGENT} ^Bot\ mailto:craftbot@yahoo.com [OR] 
RewriteCond %{HTTP_USER_AGENT} ^ChinaClaw [OR] 
RewriteCond %{HTTP_USER_AGENT} ^Custo [OR] 
RewriteCond %{HTTP_USER_AGENT} ^DISCo [OR] 
RewriteCond %{HTTP_USER_AGENT} ^Download\ Demon [OR] 
RewriteCond %{HTTP_USER_AGENT} ^eCatch [OR] 
RewriteCond %{HTTP_USER_AGENT} ^EirGrabber [OR] 
RewriteCond %{HTTP_USER_AGENT} ^EmailSiphon [OR] 
RewriteCond %{HTTP_USER_AGENT} ^EmailWolf [OR] 
RewriteCond %{HTTP_USER_AGENT} ^Express\ WebPictures [OR] 
RewriteCond %{HTTP_USER_AGENT} ^ExtractorPro [OR] 
RewriteCond %{HTTP_USER_AGENT} ^EyeNetIE [OR] 
RewriteCond %{HTTP_USER_AGENT} ^FlashGet [OR] 
RewriteCond %{HTTP_USER_AGENT} ^GetRight [OR] 
RewriteCond %{HTTP_USER_AGENT} ^GetWeb! [OR] 
RewriteCond %{HTTP_USER_AGENT} ^Go!Zilla [OR] 
RewriteCond %{HTTP_USER_AGENT} ^Go-Ahead-Got-It [OR] 
RewriteCond %{HTTP_USER_AGENT} ^GrabNet [OR] 
RewriteCond %{HTTP_USER_AGENT} ^Grafula [OR] 
RewriteCond %{HTTP_USER_AGENT} ^HMView [OR] 
RewriteCond %{HTTP_USER_AGENT} HTTrack [NC,OR] 
RewriteCond %{HTTP_USER_AGENT} ^Image\ Stripper [OR] 
RewriteCond %{HTTP_USER_AGENT} ^Image\ Sucker [OR] 
RewriteCond %{HTTP_USER_AGENT} Indy\ Library [NC,OR] 
RewriteCond %{HTTP_USER_AGENT} ^InterGET [OR] 
RewriteCond %{HTTP_USER_AGENT} ^Internet\ Ninja [OR] 
RewriteCond %{HTTP_USER_AGENT} ^JetCar [OR] 
RewriteCond %{HTTP_USER_AGENT} ^JOC\ Web\ Spider [OR] 
RewriteCond %{HTTP_USER_AGENT} ^larbin [OR] 
RewriteCond %{HTTP_USER_AGENT} ^LeechFTP [OR] 
RewriteCond %{HTTP_USER_AGENT} ^Mass\ Downloader [OR] 
RewriteCond %{HTTP_USER_AGENT} ^MIDown\ tool [OR] 
RewriteCond %{HTTP_USER_AGENT} ^Mister\ PiX [OR] 
RewriteCond %{HTTP_USER_AGENT} ^Navroad [OR] 
RewriteCond %{HTTP_USER_AGENT} ^NearSite [OR] 
RewriteCond %{HTTP_USER_AGENT} ^NetAnts [OR] 
RewriteCond %{HTTP_USER_AGENT} ^NetSpider [OR] 
RewriteCond %{HTTP_USER_AGENT} ^Net\ Vampire [OR] 
RewriteCond %{HTTP_USER_AGENT} ^NetZIP [OR] 
RewriteCond %{HTTP_USER_AGENT} ^Octopus [OR] 
RewriteCond %{HTTP_USER_AGENT} ^Offline\ Explorer [OR] 
RewriteCond %{HTTP_USER_AGENT} ^Offline\ Navigator [OR] 
RewriteCond %{HTTP_USER_AGENT} ^PageGrabber [OR] 
RewriteCond %{HTTP_USER_AGENT} ^Papa\ Foto [OR] 
RewriteCond %{HTTP_USER_AGENT} ^pavuk [OR] 
RewriteCond %{HTTP_USER_AGENT} ^pcBrowser [OR] 
RewriteCond %{HTTP_USER_AGENT} ^RealDownload [OR] 
RewriteCond %{HTTP_USER_AGENT} ^ReGet [OR] 
RewriteCond %{HTTP_USER_AGENT} ^SiteSnagger [OR] 
RewriteCond %{HTTP_USER_AGENT} ^SmartDownload [OR] 
RewriteCond %{HTTP_USER_AGENT} ^SuperBot [OR] 
RewriteCond %{HTTP_USER_AGENT} ^SuperHTTP [OR] 
RewriteCond %{HTTP_USER_AGENT} ^Surfbot [OR] 
RewriteCond %{HTTP_USER_AGENT} ^tAkeOut [OR] 
RewriteCond %{HTTP_USER_AGENT} ^Teleport\ Pro [OR] 
RewriteCond %{HTTP_USER_AGENT} ^VoidEYE [OR] 
RewriteCond %{HTTP_USER_AGENT} ^Web\ Image\ Collector [OR] 
RewriteCond %{HTTP_USER_AGENT} ^Web\ Sucker [OR] 
RewriteCond %{HTTP_USER_AGENT} ^WebAuto [OR] 
RewriteCond %{HTTP_USER_AGENT} ^WebCopier [OR] 
RewriteCond %{HTTP_USER_AGENT} ^WebFetch [OR] 
RewriteCond %{HTTP_USER_AGENT} ^WebGo\ IS [OR] 
RewriteCond %{HTTP_USER_AGENT} ^WebLeacher [OR] 
RewriteCond %{HTTP_USER_AGENT} ^WebReaper [OR] 
RewriteCond %{HTTP_USER_AGENT} ^WebSauger [OR] 
RewriteCond %{HTTP_USER_AGENT} ^Website\ eXtractor [OR] 
RewriteCond %{HTTP_USER_AGENT} ^Website\ Quester [OR] 
RewriteCond %{HTTP_USER_AGENT} ^WebStripper [OR] 
RewriteCond %{HTTP_USER_AGENT} ^WebWhacker [OR] 
RewriteCond %{HTTP_USER_AGENT} ^WebZIP [OR] 
RewriteCond %{HTTP_USER_AGENT} ^Wget [OR] 
RewriteCond %{HTTP_USER_AGENT} ^Widow [OR] 
RewriteCond %{HTTP_USER_AGENT} ^WWWOFFLE [OR] 
RewriteCond %{HTTP_USER_AGENT} ^Xaldon\ WebSpider [OR] 
RewriteCond %{HTTP_USER_AGENT} ^Zeus 
RewriteRule ^.* - [F,L]

I bots sopra elencati riceveranno tutti un errore “403 accesso negato” quando tenteranno di visualizzare il tuo sito. La quantità di risparmio di banda e la diminuzione nell’utilizzo delle risorse del server come risultato può essere significativo in molti casi.

Redirects

Mai passare attraverso l’errore di modificare in modo significativo parti del tuo sito. Ci sono diversi modi per ottenere il reindirizzamento “http-equiv”, “javascript” o uno qualsiasi dei linguaggi lato server. E allora si può farlo attraverso .htaccess, che è probabilmente il più efficace, considerando la quantità minima di lavoro necessaria per farlo.

.htaccess utilizza per cercare qualsiasi richiesta di una pagina specifica (o un percorso specifico, anche se questo può causare un loop infinito) e se rileva la richiesta, la inoltra a una nuova pagina che avete specificato. Ad esempio:

Redirect /olddirectory/oldfile.html http://yoursite.com/newdirectory/newfile.html

Utilizzando questo metodo, è possibile reindirizzare un qualsiasi numero di pagine. È il metodo più veloce ed ha un effetto globale.

Impedire la visualizzazione di .htaccess

Se si usa .htaccess per la protezione della password, il percorso contenente tutte le informazioni sulla password è chiaramente disponibile attraverso il file .htaccess. Se avete impostato i permessi corretti o se il server non è così sicuro come dovrebbe essere, un browser ha la possibilità di visualizzare un file .htaccess attraverso una interfaccia web standard, e quindi compromettere il vostro sito / server. Questo, naturalmente, sarebbe una cosa negativa. Tuttavia, è possibile impedire la visualizzazione di un file .htaccess in questo modo:

<Files .htaccess>
order allow,deny
deny from all
</Files>

La prima riga specifica che il nome file per .htaccess. È possibile utilizzare questo metodo anche per altri scopi se lo si ritiene opportuno.

Limitare l’uso di directory

Avete una directory piena di immagini o file di cui volete impedire la visualizzazione ? In genere un server è configurato per impedire l’elenco di directory, ma a volte questo non accade. In caso contrario, diventare sufficiente risolvere da soli con una semplice istruzione in .htaccess:

IndexIgnore *

Il simbolo “*” è un jolly che corrisponde a tutti i tipi di file, quindi la linea in un file .htaccess impedisce la visualizzazione nella vostra directory di immagini. Allo stesso modo, se invece vogliamo impedire la visualizzazione di alcuni tipi di file, basta aggiungere una riga come la seguente:

IndexIgnore *.gif *.jpg

Articoli che potrebbero interessarti: