File htaccess - come creare un file .htaccess istruzioni per principianti

Stampa · Время на чтение: 13мин · di · Pubblicato · Aggiornato

riprodurreAscolta l'articolo

Come creare un file .htaccess.

htaccess - come creare un file .htaccess per un principiante? Il file .htaccess, di regola, ha solo l'estensione sotto Unix - sistemi. E avvantaggia i siti che eseguono il server Apache.

Htaccess ha una serie di regole per un sito specifico sul server. Il file controlla molte opzioni di configurazione per il server Web Apache. Apache è un software server ampiamente utilizzato per i sistemi operativi multipiattaforma.

Anche se la sintassi che usa può creare un po' di confusione all'inizio, questo file .htaccess può fare molte cose utili. Alcune delle sue funzionalità includono il reindirizzamento, la protezione tramite password, la limitazione dell'accesso in base a determinate condizioni e altro ancora. In questo post vedremo come creare e configurare un file .htaccess e come implementarne alcuni degli usi più comuni.

Istruzioni per la creazione di un file .htaccess

impostazioni del file .htaccess.

htaccess è comunemente noto come "file dot" perché inizia con un punto. I file dot sono quasi sempre un file di configurazione. Tali file possono essere per un sistema operativo o un software. Per impostazione predefinita, il sistema operativo nasconde i file dot nelle finestre di ricerca o in qualsiasi gestore di file di sistema. Di solito, devi selezionare l'opzione "Mostra file nascosti" nelle impostazioni del tuo sistema operativo. Oppure puoi usare il comando per elencare tutti i file sulla riga di comando. ls-a

Possono esserci diversi file simili sul server e ogni file funziona sempre in modo ricorsivo. Ciò significa che ogni file influenzerà la directory in cui si trova, nonché tutti i file e le sottodirectory.

  1. Per creare questo file, è sufficiente utilizzare qualsiasi editor di testo disponibile (ad esempio, Blocco note).
  2. Nome (.htaccess) - senza virgolette e altre cose.
  3. Salviamo il file.
  4. Quindi lo trasferiamo sul tuo server (hosting) utilizzando un client FTP, necessariamente nella directory principale del sito. Devi trasmettere in modalità ASCII. Per impostazione predefinita, la maggior parte dei client FTP trasferirà i dati utilizzando una modalità inefficiente per il trasferimento di file punto. Il tuo client FTP dovrebbe essere in grado di impostare la modalità di trasferimento. BINARIO
  5. Quindi puoi modificarlo come preferisci, ma assicurati di aggiornare la versione del file sul server (hosting). Se per qualche motivo sembra che le regole non abbiano avuto effetto, potrebbe essere dovuto a permessi di file errati. I permessi del file .htaccess dovrebbero essere impostati su 755. Il tuo client FTP dovrebbe avere un'opzione "Permessi file". Inoltre, puoi eseguire il comando nel terminale .chmod 755 .htaccess (è meglio specificare l'indirizzo completo prima del file).

Un semplice esempio di reindirizzamento della pagina

Una delle principali regole popolari in .htaccess è il reindirizzamento della pagina. Puoi instradare da qualsiasi percorso relativo nel tuo site director. Puoi anche reindirizzare la pagina a un percorso assoluto sul tuo sito o in qualsiasi altro posto su Internet. La sintassi di base da utilizzare nel file è:

Reindirizza /directory_to_redirect_from/ https://mysite.com/new_directory/index.html

Devi sempre utilizzare un percorso relativo come directory di origine. Il percorso assoluto deve essere la directory a cui reindirizzare.

Un esempio di creazione di un documento di errore in .htaccess

La creazione di pagine di errore personalizzate è molto utile in quanto ti consente di mostrare ai visitatori del tuo sito web un messaggio di errore amichevole, ad esempio, se un URL sul tuo sito web non funziona. Questo evita l'ostile errore "File 404 non trovato" e ti consente di visualizzare un errore amichevole, spiegando le possibili soluzioni e guidando il visitatore al contenuto del tuo sito Web piuttosto che lasciarlo frustrato e perso.

Per impostare documenti di errore personalizzati, crea un file .htaccess seguendo le istruzioni e le linee guida di base, che includono il seguente testo:

ErrorDocument 404 /error_pages/404.html

La riga sopra indica al server Web Apache di eseguire il rendering del documento che si trova in /error_pages/404.html (sotto il tuo nome di dominio/indirizzo del sito Web) ogni volta che si verifica un errore 404 (file non trovato).

In questo esempio, supponiamo che tu abbia creato un documento di errore e lo abbia chiamato "404.html" e lo abbia inserito in una directory denominata "error_pages" sotto il tuo nome di dominio. Ad esempio, http://www.yourdomain.com/error_pages/404.html.

Il documento 404.html è un normale documento HTML come altri sul tuo sito Web e può visualizzare qualsiasi contenuto desideri, tuttavia ti consigliamo di includere un messaggio "File non trovato".

Per impostare documenti di errore aggiuntivi, come i messaggi di errore 401 Unauthorized, 403 Forbidden e 500 Internal Server, creare un file htaccess (punto) seguendo le istruzioni e le linee guida di base, che includono il seguente testo:

ErrorDocument 401 /error_pages/401.html
ErrorDocument 404 /error_pages/404.html
ErrorDocument 500 /error_pages/500.html

Esempio di protezione con password in .htaccess

I sistemi di protezione tramite password e autenticazione offerti dal server Web Apache sono probabilmente l'utilizzo più importante dei file .htaccess. Molto facilmente, possiamo proteggere con password una directory (o più) di un sito Web che richiede un nome utente e una password per accedere. La procedura di accesso per queste directory sicure viene gestita automaticamente dal browser Web utilizzando un'interfaccia di accesso pop-up (probabilmente l'hai già vista). Le password vengono inoltre crittografate utilizzando uno dei migliori metodi di crittografia disponibili, che mantiene al sicuro le credenziali di accesso.

Innanzitutto, decidi quale directory vuoi proteggere con password (tieni presente che tutti i file e le sottodirectory nella directory saranno protetti da password), quindi crea un file .htaccess seguendo le istruzioni e le linee guida di base, che includono il seguente testo:

AuthName "Nome dell'area del membro"
AuthUserFile /percorso/della/password/file/.htpasswd
Tipo di autenticazione di base
Richiedi utente valido

La prima riga indica al server Web Apache che la directory sicura è denominata "Nome zona utente", che verrà visualizzata quando viene visualizzato il prompt di accesso. La seconda riga specifica la posizione del file delle password. La terza riga indica il tipo di autenticazione, in questo esempio stiamo usando "Basic" perché stiamo usando l'autenticazione di base HTTP, e infine la quarta riga indica che abbiamo bisogno di credenziali di accesso valide, questa riga può essere utilizzata anche per specificare un nome utente specifico , come "richiedi nome utente nome utente" richiederà il nome utente "nome utente".

Lo useresti se proteggessi con password l'area di amministrazione piuttosto che impostare una directory pubblica protetta da password.

La posizione del file della password può essere ovunque sul tuo server web, "/location/of/password/file/" dovrebbe essere sostituito con il percorso completo/assoluto della directory contenente il file della password e il file ".htpasswd". dovrebbe esistere, ma puoi chiamarlo come preferisci.

Usiamo il nome file ".htpasswd" perché il server riconoscerà il nome file e lo nasconderà ai visitatori. Tieni presente che alcuni server richiedono che il file delle password si trovi nella stessa directory del file .htaccess. È inoltre importante utilizzare il percorso server completo/assoluto per la posizione del file delle password, un percorso relativo o qualsiasi variazione dell'URL non funzionerà.

Il file della password conterrà qualcosa di simile al seguente testo:

nome utente: password crittografata
fred_smith:oCF9Pam/MXJg2

Ora non puoi semplicemente trovare una password, sui server Unix/Linux devono essere crittografati dal server, sui server Windows usi solo una password in testo semplice poiché Windows non offre alcun metodo di crittografia. È possibile inserire un numero qualsiasi di voci utente nel file delle password, un account per riga, separando il nome utente e la password con i due punti. Se non hai accesso al server, chiedi al tuo fornitore di servizi di abilitare questa funzione. Per favore, il pannello di controllo ha questa funzione integrata.

Come bloccare i visitatori in base all'indirizzo IP

Gli strumenti di blocco dei visitatori offerti dal server Web Apache ci consentono di negare l'accesso a determinati visitatori o consentire l'accesso a determinati visitatori. Ciò è estremamente utile per bloccare visitatori indesiderati o per consentire al titolare del sito web di accedere solo ad alcune sezioni del sito web, come ad esempio l'area di amministrazione.

Per impostare le restrizioni e il blocco dei visitatori, crea un file .htaccess seguendo le istruzioni e le linee guida di base, che includono il seguente testo:

order allow,deny
negare da 255.0.0.0
negare da 123.45.6.
allow from all

Le righe sopra indicano al server Web Apache di bloccare i visitatori dagli indirizzi IP "255.0.0.0" e "123.45.6.", notare che al secondo indirizzo IP manca la quarta serie di numeri, questo significa qualsiasi indirizzo IP che corrisponde al il primo. verranno bloccate tre serie di numeri, ad esempio "123.45.6.10" e "123.45.6.255".

Per impostare il blocco di tutti i visitatori tranne te stesso, crea un file .htaccess seguendo le istruzioni e le linee guida di base, che includono il seguente testo:

order allow,deny
consentire da 255.0.0.0
deny from all

Le righe sopra indicano al server web Apache di bloccare tutti i visitatori tranne quelli con l'indirizzo IP "255.0.0.0", che dovresti sostituire con il tuo indirizzo IP.

È possibile aggiungere qualsiasi numero di voci "nega da" e "consenti da" dopo "ordina consenti, nega". Nota il passaggio da "consenti a tutti" a "nega a tutti" nella riga di fondo, questo è importante e dovrebbe essere modificato in base alle tue esigenze. Se vuoi consentire l'accesso ai tuoi visitatori, dovresti usare "consenti a tutti" e posizionare le righe "nega da" sopra.

Ai visitatori bloccati verrà mostrato il messaggio di errore "403 Proibito".

Un esempio di impostazione di un file .htaccess.

Regole di esempio contenute nel mio file .htaccess

# AMPFORWPLBROWSERCSTART Caching del browser: hashing dell'amplificatore sul lato del browser.

IfModule mod_expires.c deve essere racchiuso tra parentesi “<>”
Scade attivo il
AddType application/vnd.ms-fontobject .eot
Applicazione AddType/x-font-ttf .ttf
Applicazione AddType/x-font-opentype .otf
Applicazione AddType/x-font-woff .woff
AddType image/svg+xml .svg
ExpiresByType application/vnd.ms-fontobject "accesso 1 anno"
ExpiresByType application/x-font-ttf “accesso 1 anno”
ExpiresByType application/x-font-opentype "accesso 1 anno"
ExpiresByType application/x-font-woff “accesso 1 anno”
ExpiresByType image/svg+xml “accesso 1 anno”
ExpiresByType image/webp "accesso 1 anno"
ExpiresByType image/gif “accesso 1 anno”
ExpiresByType image/jpg “accesso 1 anno”
ExpiresByType image/jpeg “accesso 1 anno”
ExpiresByType image/png “accesso 1 anno”
ExpiresByType image/x-icon “accesso 1 anno”
ExpiresByType text/css "accesso 3 mesi"
ExpiresByType text/javascript “accesso 3 mesi”
ExpiresByType application/javascript “accesso 3 mesi”
ExpiresByType application/x-javascript “accesso 3 mesi”
ExpiresByType application/xhtml-xml “accesso 3 mesi”
ScadePerTipo applicazione/pdf “accesso 3 mesi”
ExpiresByType application/x-shockwave-flash “accesso 3 mesi”
/IfModule deve essere racchiuso tra parentesi “<>”

# INIZIA LA COMPRESSIONE GZIP - compressione gzip

IfModule mod_gzip. assicurati di racchiudere tra parentesi “<>”
mod_gzip_on Sì
mod_gzip_dechunk Sì
mod_gzip_item_include file \.(html?|txt|css|js|php|pl)$
gestore mod_gzip_item_include ^cgi-script$
mod_gzip_item_include mime ^testo/.*
mod_gzip_item_include mime ^application/x-javascript.*
mod_gzip_item_exclude mime ^image/.*
mod_gzip_item_exclude rspheader ^Codifica contenuto:.*gzip.*
/IfModule deve essere racchiuso tra parentesi “<>”

# Rimuovi bug del browser (necessario solo per browser molto vecchi)

BrowserMatch ^Mozilla/4 gzip-solo-testo/html
BrowserMatch ^Mozilla/4\.0[678] no-gzip
BrowserMatch \bMSIE !no-gzip !gzip-only-text/html
L'intestazione aggiunge Varia User-Agent
IfModule mod_deflate.c deve essere racchiuso tra parentesi “<>”

# Comprime HTML, CSS, JavaScript, testo, XML e font

AddOutputFilterByType DEFLATE application/javascript
AddOutputFilterByType DEFLATE application/rss+xml
AddOutputFilterByType DEFLATE application/vnd.ms-fontobject
AddOutputFilterByType DEFLATE application/x-font
AddOutputFilterByType DEFLATE application/x-font-opentype
AddOutputFilterByType DEFLATE application/x-font-otf
AddOutputFilterByType DEFLATE application/x-font-truetype
AddOutputFilterByType DEFLATE application/x-font-ttf
AddOutputFilterByType DEFLATE application/x-javascript
AddOutputFilterByType DEFLATE application/xhtml+xml
AddOutputFilterByType DEFLATE application/xml
AddOutputFilterByType DEFLATE font/opentype
AddOutputFilterByType DEFLATE font/otf
AddOutputFilterByType DEFLATE font/ttf
AddOutputFilterByType DEFLATE image/svg+xml
AddOutputFilterByType DEFLATE image/x-icon
AddOutputFilterByType DEFLATE text/css
AddOutputFilterByType DEFLATE text/html
AddOutputFilterByType DEFLATE text/javascript
AddOutputFilterByType DEFLATE text/plain
AddOutputFilterByType DEFLATE text/xml
/IfModule deve essere racchiuso tra parentesi “<>”

# Impedisce che le intestazioni HTTP Vary vengano restituite ai browser della famiglia MSIE


BrowserMatch "MSIE" non forza alcuna variazione
BrowserMatch "Mozilla/4.[0-9]{2}" forza nessuna variabile
/IfModule deve essere racchiuso tra parentesi “<>”

# Nascondi la firma del server

Firma del server disattivata

# Disabilita i bot di sinistra

Agente utente SetEnvIfNoCase “^Missigua Locator” bad_bot
#SetEnvIfNoCase Agente utente "^PEAR HTTP_Request class" bad_bot
Agente utente SetEnvIfNoCase “^Java/1.4.1” bad_bot
Agente utente SetEnvIfNoCase “^Java/1.5.0” bad_bot
Agente utente SetEnvIfNoCase "^psycheclone" bad_bot
Agente utente SetEnvIfNoCase “^WEP Search 00” bad_bot
Agente utente SetEnvIfNoCase “^FlashGet” bad_bot
Agente utente SetEnvIfNoCase “^GetRight” bad_bot
Agente utente SetEnvIfNoCase "^GetWeb!" bad_bot
Agente utente SetEnvIfNoCase “^Go!Zilla” bad_bot
Agente utente SetEnvIfNoCase “^httplib” bad_bot
Agente utente SetEnvIfNoCase “^Indy Library” bad_bot
Agente utente SetEnvIfNoCase "^InfoNaviRobot" bad_bot
Agente utente SetEnvIfNoCase “^InterGET” bad_bot
Agente utente SetEnvIfNoCase “^Internet Ninja” bad_bot
Agente utente SetEnvIfNoCase “^LexiBot” bad_bot
Agente utente SetEnvIfNoCase “^libWeb/clsHTTP” bad_bot
Agente utente SetEnvIfNoCase “^libwww” bad_bot
Agente utente SetEnvIfNoCase “^libwww-perl” bad_bot
Agente utente SetEnvIfNoCase “^LinkextractorPro” bad_bot
Agente utente SetEnvIfNoCase “^Mozilla.*NEWT” bad_bot
Agente utente SetEnvIfNoCase "^Octopus" bad_bot
Agente utente SetEnvIfNoCase “^ProWebWalker” bad_bot
Agente utente SetEnvIfNoCase “^SuperBot” bad_bot
Agente utente SetEnvIfNoCase “^WebAuto” bad_bot
Agente utente SetEnvIfNoCase “^Wells Search II” bad_bot
Agente utente SetEnvIfNoCase “^Wget” bad_bot
Agente utente SetEnvIfNoCase “^wget” bad_bot

Ho dato un minimo di regole che sono contenute nel mio file.

Funzionalità di personalizzazione dei file .htaccess ed errori comuni

Esatto, questo file molto spesso causa un banale errore del server 500 Internal Server Error. È necessario modificare il file con molta attenzione e seguire le seguenti regole:

  • Salva sempre una copia di lavoro del file .htaccess prima di modificarlo.
  • Non introdurre mai nuove regole in un sito di produzione senza prima esaminare il file.
  • La codifica è solitamente UTF-8.
  • Ogni regola deve essere scritta su una nuova riga.
  • Quelle istruzioni che non vengono elaborate dal server Apache sono escluse: causano immediatamente un errore del server.
  • Non puoi scrivere più istruzioni su una riga: otterrai un errore 500.
  • Fai attenzione: uno spazio o un carattere in più può portare a un errore.

Che effetto ha il file .htaccess sul sito

Di norma, grazie a questo file, puoi perfettamente ottimizzare il sito per i motori di ricerca. Ecco cosa può fare:

  1. Impostazione di un reindirizzamento 301 sul sito (la regola più comune). Può essere utilizzato per le attività necessarie.
  2. Impostazioni di hashing del sito sul lato server.
  3. Abilitazione della compressione gzip (abbreviazione di GNU Zip) - compressione dei file sul lato server.
  4. Garantire la protezione del sito: blocco degli indirizzi IP, ban, ecc.
  5. Specificare la quantità richiesta di memoria allocata per il sito.

Questa è la funzionalità minima disponibile per questo file. La cosa principale è seguire correttamente tutte queste raccomandazioni. Nei seguenti articoli, cercherò di descrivere alcune regole per questo file, e sapremo anche cos'è file robots.txt e come aggiungere la mappa del sito ai motori di ricerca.

Grazie per aver letto Nicola Top

Quanto è utile il post?

Clicca sulla faccina per votare!

voto medio 5 / 5. Numero di valutazioni: 29

Non ci sono ancora valutazioni. Valuta prima.

Potrebbero interessarti anche...

Una risposta

  1. Илья ha detto:

    Oooh grazie per l'informazione. Almeno puoi guardare esempi dal vivo. L'animazione del gradiente è semplicemente super))) Ottima applicazione - molto probabilmente ha sofferto a lungo.

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *

11 + 10 =