Guida pratica su htaccess prima parte

Area dedicata alle guide di phpBB 3
Rispondi
Avatar utente
Lucky
Utente
Utente
Messaggi: 159
Iscritto il: 15/10/2012, 20:33
Link del Forum: http://www.portalxl.eu
Località: Bari
Contatta:

Guida pratica su htaccess prima parte

Messaggio da Lucky »



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:

Codice: Seleziona tutto

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:

Codice: Seleziona tutto

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:

Codice: Seleziona tutto

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.

Nota importante, questa è la prima parte di una guida pubblicata sul mio blog, è possibile condividerla o pubblicarla su altri siti, a patto che sia pubblicata la fonte.
Rispondi