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

18 marzo 2012 , , , , , ,
Guida pratica .htaccess, risorse e campi d’azione prima parteè stato aggiornato il 13 marzo 2013
Autore: Luciano Del Fico 1 Commento
Posteshop

Un file .htaccess è un semplice file ASCII,  può essere facilmente creato con un editor di testo come Notepad++ o SimpleText. Lo scopo di un semplice file come .htaccess è fornire istruzioni  lato server (Apache) per ottenere particolari impostazioni, come ad esempio: documenti di errore, protezione con password, abilitazione SSL via htaccess, blocco IP e siti referenti, blocco bots, redirects, impedire la visualizzazione di htaccess, impedire il linking di immagini, limitare l’uso di directory.

Le istruzioni di htaccess vengono applicate solo alla directory di appartenenza con relative sotto-directory, in questo modo le varie impostazioni possono non influire ad esempio in un inteo server. Molti hoster consentono a tale scopo l’impostazione di un proprio .htaccess anche perchè per alcuni CMS è praticamente indispensabile l’uso e il corretto funzionamento.

Come si crea un file .htaccess?

Se il server lo consente è possibile creare un proprio file .htaccess con un editor di testo come Notepad++, il file dovrà essere rinominato successivamente in .htaccess, si avete capito bene deve essere aggiunto un punto (.) al nome del file, e deve essere eliminata l’eventuale estensione creata in automatico dall’editor come ad esempio htaccess.txt, in definitiva il file dovrà essere precisamente .htaccess ! Il file creato deve essere caricato in modalità ASCII, prestate attenzione a non utilizzare la modalità binaria.

Le impostazioni sono visibili nelle proprietà del vostro client FTP come ad esempio Filezilla. Potrebbe inoltre essere necessario impostare CHMOD 644 o (RW-R–R–). Ciò rende il file utilizzabile dal server, ma impedisce che venga letto da un browser,  potrebbe seriamente compromettere la sicurezza. (Ad esempio, se avete la password directory protette, se un browser in grado di leggere il file htaccess, allora possono ottenere la posizione del file di autenticazione e poi decodificare la lista per ottenere l’accesso completo a qualsiasi porzione che in precedenza aveva protetto.

Campi di applicazione: errori personalizzati, protezione con password, abilitazione SSL via htaccess, blocco IP e siti referenti, blocco bots, redirects, impedire la visualizzazione di htaccess, impedire il linking di immagini, limitare l’uso di directory

Errori personalizzati

Probabilmente si vorrà creare un errore per i codici di errore 404 e 500, i codici rappresentano le pagine non trovate e errore server. Si può anche prendere in considerazione anche  401 – Autorizzazione richiesta (si verifica quando qualcuno tenta di entrare in un’area protetta del sito senza le giuste credenziali), 403 – Accesso negato (si verifica quando non si dispone di permessi ad un singolo file) e 400 – Bad Request, che è uno degli errori generici dove vengono eseguiti accessi al vostro URL tramite script.

Al fine di specificare i propri errori personalizzati, basta aggiungere il seguente comando, su un’unica riga , all’interno del file htaccess:

ErrorDocument 400 /errors/badrequest.html
ErrorDocument 401 /errors/authreqd.html
ErrorDocument 403 /errors/forbid.html
ErrorDocument 404 /errors/notfound.html
ErrorDocument 500 /errors/serverr.html

Protezione con password

Ci sono numerosi metodi per proteggere l’accesso con password,  un linguaggio basato su server (come ASP, PHP o Perl) e lato client based, come ad esempio JavaScript. JavaScript non è così sicuro o infallibile come server-side.  Htaccess è molto più sicuro, anche se in informatica “nulla è sicuro”.  La prima cosa che dovrete fare è creare un file chiamato .htpasswd . Lo so, potreste avere problemi con la convenzione di denominazione, ma è la stessa idea dietro il nome del file htaccess stesso, e si dovrebbe essere in grado di farlo da questo punto. Nel file htpasswd, è possibile inserire il nome utente e password (che è criptato) per coloro che si desidera avere accesso.

Ad esempio, un username e password di wsabstract (e io non consiglio avendo il nome utente è la stessa password), il file htpasswd sarebbe simile a questa:

wsabstract: y4E65rd8e7EYV


Si noti che è UserName deve seguire la password.
C’è un tool
disponibile per crittografare facilmente la password nella codifica appropriata per l’uso nel file httpasswd.

Per motivi di sicurezza, non si deve caricare il file htpasswd in una directory che è accessibile dal web (yoursite.com / .htpasswd), deve essere collocato al di sopra la directory root www. Inoltre, questo file, come con htaccess, deve essere caricato come ASCII e non in modalità BINARIA.

Creare un nuovo file htaccess e inserire il codice riportato di seguito in essa:

AuthUserFile /usr/local/you/safedir/.htpasswd
AuthGroupFile /dev/null
AuthName EnterPassword
AuthType Basic

require user wsabstract

La prima riga è il percorso server completo al file htpasswd. Se avete installato uno script sul vostro server, è necessario avere familiarità con esso. Si noti inoltre che se si inserisce il file htaccess nella directory root, verrà protetto con password l’intero sito, che probabilmente non è il vostro obiettivo.

La penultima riga richiedere all’utente dove devi inserire il nome utente di chi si desidera avere accesso a quella parte del tuo sito. Si noti che utilizzando questo permetterà soltanto specifico utente di poter accedere alle directory. Se l’obiettivo è un intero elenco utenti di avere accesso a tale directory, si dovrebbe sostituire Require user xxx con require valid-user. Il AuthName è il nome dell’area che si desidera accedere.

Ulteriori campi di applicazione saranno pubblicati in Guida pratica .htaccess, risorse e campi d’azione seconda parte, di prossima pubblicazione.

Articoli che potrebbero interessarti: