La configurazione .htaccess

Il file .htaccess è un file di configurazione di Apache. Consente di specificare la reazione del server le richieste dell'utente, configurare la memorizzazione nella cache e la compressione, ma anche di delimitare l'accesso alle varie sezioni del sito,

Le possibilità che offre htaccess per la configurazione del server è troppo grande per stare in un articolo, ma non abbiamo intenzione di trattare tutti i dettagli di configurazione di Apache, e consideriamo solo le impostazioni di base .htaccess per riduzione di pagine duplicate sul sito.


In primo luogo, il sito dispone di un duplicato dello specchio primario, il sito si apre come www, e senza di lui.

Questo stato di cose un male il fatto che:

  • Confonde l'utente per la correttezza del nome del sito
  • Peggiora memorizzare il nome utente del sito
  • Impedisce ai motori di ricerca di robot di percepire adeguatamente pagina del sito (i motori di ricerca ritengono pagina con www e senza www diversi e contenuti su di loro дублируемым)

Per sbarazzarsi di un duplicato dello specchio primario .htaccess è necessario fornire:

RewriteEngine on
RewriteCond %{HTTP_HOST} !^crazysquirrel\.ru$ [NC]
RewriteRule ^(.*)$ https://crazysquirrel.ru/$1 [R=301,L]

Per le impostazioni come specchio primario il nome del sito senza www

RewriteEngine on
RewriteCond %{HTTP_HOST} !^www\.crazysquirrel\.ru$ [NC]
RewriteRule ^(.*)$ https://www.crazysquirrel.ru/$1 [R=301,L]

Per le impostazioni come specchio primario i titoli con www


In secondo luogo, il sito dispone di un duplicato del file del sito (index.html, index.php ecc)

Questo stato di cose un male il fatto che:

  • Peggiora la vista della pagina principale del sito (molto più bello di vedere il nome del sito senza alcun index che togli)
  • Impedisce ai motori di ricerca di robot di percepire adeguatamente pagina del sito (i motori di ricerca considerano l'indirizzo del sito con index e senza di lui come diverse pagine e dei contenuti su di loro дублируемым)

Per sbarazzarsi di duplicati del file del sito, è necessario registrarsi nel .htaccess:

RewriteEngine on
RewriteCond %{THE_REQUEST} ^.*/index.php
RewriteRule ^(.*)index.php$ https://crazysquirrel.ru/$1 [R=301,L]

In terzo luogo, i duplicati GET (i parametri passati nell'url dopo il segno ?)

Questo stato di cose un male il fatto che:

  • Peggiora la vista della pagina principale del sito (molto più bello vedere un URL senza GET i parametri che togli)
  • Impedisce ai motori di ricerca di robot di percepire adeguatamente pagina del sito (i motori di ricerca considerano l'indirizzo del sito con GET e senza di lui come diverse pagine e dei contenuti su di loro дублируемым)

Per sbarazzarsi di duplicati GET è necessario registrarsi nel .htaccess:

RewriteEngine on
RewriteCond %{QUERY_STRING} !^$ [NC]
RewriteCond %{THE_REQUEST} \? [NC]
RewriteCond %{THE_REQUEST} !admin [NC]
RewriteRule ^(.*)?(.*)$ https://crazysquirrel.ru/$1? [R=301,L]

Regola generale per sbarazzarsi di duplicati:

RewriteEngine on
RewriteCond %{HTTP_HOST} !^crazysquirrel\.ru$ [NC]
RewriteRule ^(.*)$ https://crazysquirrel.ru/$1 [R=301,L]
RewriteCond %{THE_REQUEST} ^.*/index.php
RewriteRule ^(.*)index.php$ https://crazysquirrel.ru/$1 [R=301,L]
RewriteCond %{QUERY_STRING} !^$ [NC]
RewriteCond %{THE_REQUEST} \? [NC]
RewriteCond %{THE_REQUEST} !admin [NC]
RewriteRule ^(.*)?(.*)$ https://crazysquirrel.ru/$1? [R=301,L]

I dati configurazioni:

  • RewriteEngine on — direttiva per attivare/disattivare il meccanismo di conversione (si scrive una tutto htaccess)
  • RewriteCond %{HTTP_HOST} !^crazysquirrel\.ru$ [NC] — consente di definire le condizioni per l'applicazione di conversione solo a titolo di un sito diverso da desiderato
  • RewriteRule ^(.*)$https://crazysquirrel.ru/$1[R=301,L] — il meccanismo di conversione reindirizza l'utente a «nome del sito»
  • RewriteCond %{QUERY_STRING} !^$ [NC] — definisce la condizione per l'applicazione di conversione solo agli indirizzi che ci sono GET i parametri
  • RewriteCond %{THE_REQUEST} \? [NC] — definisce la condizione di conversione solo per gli indirizzi di possesso ?
  • RewriteCond %{THE_REQUEST} !admin [NC] — definisce le regole di conversione per gli indirizzi non hanno nella loro composizione дирректории o file pannello di amministrazione del sito (se sul sito non c'CMS o per il suo lavoro non richiede GET i parametri, questo posto non si può scrivere)
  • crazysquirrel.it — il nome del sito
  • admin — indice pannello di amministrazione del sito
  • index.php il file principale del sito
  • R=301 — bandiera recante il codice di stato http improprio del sito (301 — bandiera costante cambiamento di indirizzo)
  • L — flag che indica che la regola di ultima
  • NC — flag che indica che questa regola non è importante registro di scrittura
Guardare e lasciare commenti