La guida per principianti a .htaccess

Pubblicato: 2023-10-25

.htaccess – la parola spaventosa che tutti coloro che possiedono un sito web sentono di tanto in tanto. Anche se il nome stesso sembra troppo tecnico per essere compreso, è uno strumento potente da avere nel proprio arsenale. Imparando a conoscere .htaccess, come funziona e i possibili casi d'uso, ci sono più che sufficienti cose che puoi fare con esso senza sforzo. Scopriamo di cosa si tratta, come puoi usarlo a tuo vantaggio e otteniamo gli esempi e le spiegazioni più utili per gli usi più comuni di .htaccess!

Cos'è .htaccess?

L'abbreviazione di "accesso ipertestuale", .htaccess è un file di configurazione che può aiutarti a controllare il software del server Web Apache. È possibile creare il file .htaccess e aggiungerlo alla directory in modo che venga caricato e successivamente eseguito dal Web Server Apache.

Per dirla semplicemente, puoi utilizzare questo file per abilitare o disabilitare qualsiasi funzionalità che il Web Server ha da offrire. Dal reindirizzamento di base alla prevenzione degli hotlink, ci sono molteplici vantaggi nel padroneggiare l'utilizzo di .htaccess.

Che aspetto ha il file .htaccess?

Il file .htaccess è ciò che ne fai. Potrebbe contenere solo una riga o più righe, a seconda dello scopo del file. Ci sono molte cose che puoi scrivere nel file per fare tantissime cose, alcuni degli esempi li troverai continuando a leggere.

Ne ho già uno?

Nella maggior parte dei casi, se hai un sito web, probabilmente hai già un file .htaccess. Di solito puoi trovarlo nella cartella principale del tuo sito web. Basta andare alla cartella che contiene tutto il contenuto del tuo sito Web e cercare la cartella Public_HTML o una cartella denominata www. Se disponi di sottodirectory per più siti, ne troverai una in ciascuna sottodirectory.

Se non riesci a trovarlo, non preoccuparti. Ciò non significa che non ce l'hai: potrebbe semplicemente essere nascosto. Questo di solito è il caso dei file che iniziano con un punto, proprio come fa .htaccess. Per impostazione predefinita, di solito non sono facili da individuare.

Vai al tuo File Manager o al client FTP e cerca l'opzione "mostra file nascosti". Non lasciare nessuna opzione di intentata, in particolare “Preferenze”, “Impostazioni” o “Opzioni”.

Sembra che non ne abbia uno.

Tuttavia, niente problemi, perché puoi crearne uno senza sforzo. Ciò di cui avrai bisogno è un normale editor di testo e un po' di attenzione per i dettagli. Puoi utilizzare Microsoft WordPad o TextPad, ad esempio. La parte difficile, però, è assicurarsi di nominare e salvare correttamente il file .htaccess.

Innanzitutto, devi salvarlo nel formato corretto. Dovrebbe essere in formato ASCII, quindi resisti alla tentazione di salvarlo come UTF-8 o in qualsiasi altro formato.

In secondo luogo, assicurati che si chiami .htaccess. Sembra piuttosto semplice, ma in realtà è qui che entra in gioco l'attenzione per i dettagli. Vuoi assicurarti di mantenere il punto all'inizio. Il passaggio successivo è assicurarsi di non includere alcuna estensione di file. Salvarlo come "htaccess.txt" non arriverà al traguardo. Aggiungi il punto e rimuovi l'estensione!

Infine, vuoi caricarlo nella directory appropriata. Puoi tornare indietro nella guida e salvarla in una delle directory sopra menzionate. Per fare ciò, puoi utilizzare FTP o qualsiasi altro file manager basato su browser con cui ti trovi a tuo agio.

Cosa posso fare con .htaccess?

Ci sono moltissime cose che puoi ottenere con .htaccess e un po' di know-how. Ecco qui alcuni di loro:

Gestione degli errori

La prima cosa, e una delle più semplici, che puoi fare con .htaccess, è assicurarti che i tuoi visitatori vedano un messaggio di errore amichevole e personalizzato, invece di quello spaventoso.

Quello che vuoi fare è creare prima un documento HTML. Si consiglia di contenere la descrizione dell'errore, ad esempio "Non trovato" per gli errori 404 o "Bad Gateway" per gli errori 502. Tuttavia, la verità è che puoi visualizzare qualsiasi contenuto desideri.

Dovresti anche assicurarti di nominarlo correttamente in modo da sapere di quale documento si tratta. Se gestisce l'errore 404, il modo comune per salvarlo è come 404.html. Vuoi anche salvarlo nella directory error_pages, che dovrebbe contenere tutti i documenti di errore.

Una volta pronto, dovresti aprire il tuo file .htaccess in un editor preferito e digitare qualcosa del genere:

ErrorDocument 404 /error_pages/404.html

Questa riga dirà al server del tuo sito web di visualizzare il documento designato ogni volta che si verifica un errore 404. Puoi ripetere ulteriormente questo processo con qualsiasi documento di errore desideri, per assicurarti che i tuoi visitatori non siano frustrati dal messaggio eccessivamente semplice e generico che normalmente riceverebbero.

Reindirizzamenti semplici

Sebbene WordPress possa avere molti plugin che lo fanno per te, puoi anche reindirizzare i tuoi visitatori utilizzando il file .htaccess. Portare i tuoi visitatori alla pagina che hai specificato invece che a quella che hanno richiesto è un altro compito semplice. Inserendo un'altra riga nel file, puoi reindirizzare i tuoi visitatori in un altro punto del tuo sito web o anche su un altro sito web.

Per reindirizzarli, ecco un esempio di cosa potresti aggiungere al file .htaccess. Ovviamente dovresti modificarlo un po' per adattarlo alle tue esigenze.

Reindirizza /old_dir/ http://www.tuodominio.com/new_dir/index.html

Spieghiamolo in modo che tu sappia come personalizzarlo per assicurarti che i tuoi visitatori finiscano dove vuoi che finiscano.

Innanzitutto, quale sarebbe /old_dir/? È una directory o un documento situato sotto il tuo dominio o, più precisamente, si troverebbe in "http://www.tuodominio.com/old_dir/". Questo è il punto in cui i tuoi visitatori proveranno ad accedere. Il resto del file specifica invece dove dovrebbero finire. In questo caso, finiranno nella pagina indice della /new_dir/ sul tuo sito web.

Come puoi vedere, a differenza del punto di partenza, la pagina su cui vuoi che arrivino i tuoi utenti è un URL completo. Questo aiuta quando si reindirizza a un altro dominio, poiché puoi utilizzare qualsiasi URL e aggiungerlo al posto di quello nell'esempio. Un gioco da ragazzi, vero?

Protezione della password

Se stai cercando di costruire una comunità attorno al tuo sito web, offrire un'area riservata ai membri e far accedere i visitatori può essere proprio il trucco. Sebbene la community sia un'ottima cosa da fare per quanto riguarda le attività di marketing e le vendite, può anche aiutarti a generare un'idea di chi siano i tuoi utenti e a raccogliere le informazioni tanto necessarie sui tuoi clienti.

Finché sei conforme al GDPR, potresti utilizzare questo trucchetto per modificare la tua offerta in base alle informazioni raccolte e, alla fine, vendere di più!

Come proteggere con password?

L'opportunità di aggiungere una password a qualsiasi cosa sul tuo sito web è il modo più comune di utilizzare i file .htaccess. È anche piuttosto semplice da fare e, tuttavia, puoi proteggere con password una o poche directory. Ciò farà sì che gli utenti dispongano di un nome utente e una password validi per accedervi, il che può essere piuttosto utile in una varietà di situazioni.

Se imposti la protezione tramite password per le directory, la procedura di accesso sarà piuttosto semplice e il tuo browser web la gestirà automaticamente. Verrà visualizzato come interfaccia pop-up del browser. Anche le password sono crittografate, quindi anche le credenziali di accesso saranno sicure.

Se sai quale directory vuoi proteggere con password, vai avanti e crea un file .htaccess. Tieni presente che anche tutte le sottodirectory saranno protette da password! Anche qui si applicano le stesse regole, ma dovresti includere quanto segue:

AuthName “Nome del membro”

AuthUserFile /percorso/della/password/file/.htpasswd

AuthType Base

richiedono un utente valido

Analizziamolo in modo che tu sappia come modificarlo se necessario. Nella prima riga, questo file .htaccess specifica il nome della directory che desideri proteggere. In questo caso, si tratta della directory "Nome membro", ma è necessario modificarla per adattarla al nome di una directory che deve essere protetta da password.

La seconda riga specifica il file delle password o, per essere più precisi, dove il server può trovare il file delle password. Il terzo è il tipo di autorizzazione che stai utilizzando. Nell'esempio si tratta di un'autenticazione basic, che indica l'autenticazione HTTP di base.

L'ultima riga rappresenta i requisiti per il login. In questo esempio sono necessarie credenziali di accesso valide. Qui puoi specificare cosa è necessario affinché sia ​​valido, a seconda di cosa stai cercando di proteggere con password.

Il file delle password

Ora devi capire il file della password. Sebbene possa trovarsi ovunque sul tuo server web, è consigliabile che il file della password si trovi nella stessa directory del file .htaccess. Questo perché alcuni server richiedono che questa sia impostata. Dovresti utilizzare il percorso completo della directory, che contiene il file della password, nella seconda riga.

Naturalmente ciò significa anche che è necessario avere a portata di mano il file delle password. Nell'esempio si chiama .htpasswd, ma puoi chiamarlo come preferisci. Tuttavia, se gli dai lo stesso nome, la buona notizia è che il server riconoscerà questo nome file e lo nasconderà automaticamente ai visitatori. Il file della password dovrebbe contenere qualcosa sulla falsariga di:

nome utente: password crittografata

john_smith:oCF9Pam/MXJg2

Nega l'accesso ai visitatori

Anche con i siti web ci sono persone non grate. Con il file .htaccess corretto, potresti limitare l'accesso di qualcuno. Oppure, al contrario, consentire un accesso specifico a un visitatore specifico. Il primo è piuttosto utile se stai cercando di proteggere il tuo sito web, mentre il secondo è perfetto se vuoi avere il pieno controllo su un aspetto specifico del tuo sito.

Puoi negare l'accesso ai visitatori in due modi. Nega l'accesso ai tuoi visitatori in base al loro indirizzo IP oppure puoi effettuare una selezione in base al referrer.

Negato tramite IP

Se stai cercando di inserire alcuni IP nella lista nera, puoi farlo senza sforzo con un po' di aiuto dal tuo file .htaccess. Creane uno nuovo, seguendo le stesse regole, quindi aggiungi il testo seguente.

ordine consentire, negare

nega da XXX.XXX

negare dal XXX.XX.X.

consentire da tutti

Naturalmente dovresti sostituire le X con l'indirizzo IP che desideri bloccare. Aggiungine quanti ne hai bisogno e questo file farà sapere al server Web che questi indirizzi IP non sono i benvenuti sul tuo sito. Assicurati di aggiungere l'autorizzazione da tutti, poiché questa riga indica che gli altri visitatori sono più che benvenuti sul tuo sito web.

D'altra parte, se vuoi essere l'unico ad avere accesso, dovresti invece includere il seguente testo:

ordine consentire, negare

consenti da XXX.0.0.0

negato da tutti

Naturalmente, dovresti sostituire le X con il tuo indirizzo IP. Questo dirà al server che solo tu dovresti avere accesso a un punto specifico.

Negazione da parte del referente

Osservando i tuoi registri, noti attività sospette. Perché non aggiungi semplicemente il referrer alla lista nera e non ti togli ogni preoccupazione? Ecco come puoi farlo con .htaccess.

Crea semplicemente il file come faresti normalmente. L'input dovrebbe assomigliare a questo:

RewriteEngine acceso

# Opzioni + Segui Collegamenti simbolici

RewriteCond %{HTTP_REFERER} altrodominio\.com [NC]

RewriteRule .* – [F]

Questo dovrebbe bastare! Dovresti però verificare se 'mod_rewrite' è abilitato sul tuo server, poiché potrebbe essere disabilitato a causa del fatto che potrebbe richiedere una grande richiesta di risorse. Se lo è, dovresti verificarlo con il tuo provider di hosting.

In sostanza, queste righe fanno sapere al server che nessuno di altrodominio\.com è il benvenuto sul tuo sito web. Naturalmente, dovresti invece aggiungere qui il dominio appropriato. Anche la parte "[NC]" alla fine è molto importante, poiché informa che il nome di dominio che hai fornito non fa distinzione tra maiuscole e minuscole. Ciò significa che anche “AltroDominio” è vietato.

Se stai cercando di bloccare più piantagrane, aggiungi invece "[NC,OR]", quindi vai avanti e aggiungine un altro allo stesso modo:

RiscriviCond %{HTTP_REFERER} altrodominio\.com

Puoi continuare a farlo finché non sei soddisfatto, ma non dimenticare di aggiungere "[NC,OR]" alla fine di ognuno, tranne l'ultimo.

Impedire ai bot dannosi di scansionare il tuo sito web

Un altro motivo perfetto per utilizzare .htaccess è prevenire i crawler sul tuo sito web. Mentre ce ne sono di innocui, che scaricano interi contenuti per sfogliarli offline, ci sono quelli con intenzioni dannose. Vale a dire, Internet è piena di bot dannosi, alla ricerca di indirizzi e-mail da riempire con e-mail di spam, falle di sicurezza o semplicemente per reperire contenuti.

Anche se questo è un po' più avanzato rispetto agli esempi precedenti, dovresti assolutamente provarlo. Impedire a questi robot malvagi di farti del male è un must, in un modo o nell'altro.

Crea semplicemente un altro file .htaccess come hai fatto per gli esempi precedenti. Quello che dovresti scrivere è simile a questo:

RewriteEngine acceso

RiscriviCond %{HTTP_USER_AGENT} ^BlackWidow [OR]

RiscriviCond %{HTTP_USER_AGENT} ^SuperBot

Riscrivi la regola ^.* – [F,L]

La verità è che l'elenco dovrebbe essere molto più lungo, poiché dovrebbe includere tutti i pipistrelli più famosi. Puoi trovare un elenco di questo tipo qui. Più ne includi, meglio è.

Assicurati comunque di rinominarlo: usa il nome del bot invece di BlackWidow o SuperBot. Includi sempre [OR] alla fine di ognuno, ma assicurati di non usarlo con l'ultimo. Ecco! Il tuo sito web è libero da tutti quei crawler dannosi!

C'è di più?

Naturalmente c'è. Come detto, dopo tutto questa è una guida per principianti. Ci sono molte altre cose che potresti fare con i file .htaccess.

Ad esempio, potresti utilizzare i file .htaccess per impostare il fuso orario del server o modificarne la firma. Se il tuo sito web fa molto affidamento sui media, puoi usarlo per assicurarti che tutti i file multimediali vengano scaricati invece di essere riprodotti. Oppure puoi usarlo per prevenire richieste che includono caratteri non validi e molto altro ancora.

Anche se provare a scrivere .htaccess è un problema, usarne uno, come puoi vedere, è un gioco da ragazzi, anche se puoi ancora ottenere così tanto!

Ciò che devi tenere a mente quando crei e modifichi il tuo file è testarlo accuratamente dopo aver apportato eventuali modifiche prima di pubblicarlo. Non vuoi fornire ai tuoi utenti l'errore interno del server 500, vero?

L'ultimo consiglio

Anche se qualcosa non funziona correttamente, non sentirti eccessivamente frustrato. Controlla gli errori di battitura, di solito questo risolve il problema! In caso contrario, controlla i forum di supporto!