Konfigurera .htaccess

Fil .htaccess är konfigurationsfilen för Apache. Det gör att du kan ange servern som svar på önskemål från användare, konfigurera caching och komprimering, liksom att skilja tillgång till olika områden av webbplatsen

De möjligheter som erbjuds av htaccess till server konfigurationen är för stor för att passa i en artikel, men vi kommer inte att tänka på alla detaljer i Apache-konfiguration, och vi anser att endast de grundläggande inställningarna .htaccess att minska dubbla sidor på webbplatsen.


För det första, den webbplats som innehåller en kopia av de viktigaste spegel, webbplatsen öppnas med www och utan det.

Situationen är dålig för dem som:

  • Förvirrar användaren om det korrekta namnet på webbplatsen
  • Försämrar memorera namnet på den webbplats användaren
  • Förhindrar att söka robotar att uppfatta adekvat sidan (sökmotorer anser att sidor med www och utan www är olika, och innehållet på dem speglad)

För att bli av med en kopia av den stora spegeln .htaccess är det nödvändigt att ordinera:

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

För att konfigurera som den primära spegel webbplatsens namn utan www

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

För att konfigurera som den primära spegel av namn med www


För det andra, den webbplats som innehåller en kopia av huvud-fil på webbplatsen (index.html, index.php etc.)

Situationen är dålig för dem som:

  • Försämras den viktigaste sidan av webbplatsen (mycket trevligare att se namnet på webbplatsen utan index snarare än att ta av)
  • Förhindrar att söka robotar att uppfatta adekvat sidan (sökmotorer anser webbadress med index och utan det, som olika sidor och duplicerat innehåll på dem)

För att bli av med dubbletter av huvud-fil på webbplatsen måste du registrera dig .htaccess:

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

För det tredje, FÅ dubbletter (parametrar i url: en efter tecken ?)

Situationen är dålig för dem som:

  • Försämras den viktigaste sidan av webbplatsen (mycket trevligare att se WEBBADRESSEN utan FÅ parametrar snarare än att ta av)
  • Förhindrar att söka robotar att uppfatta adekvat sidan (sökmotorer anser webbadress med FÅ och utan att det, som olika sidor och duplicerat innehåll på dem)

För att bli av med dubbletter FÅ anledning att skriva i .htaccess:

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

Den Allmänna regeln för att bli av med dubbletter:

RewriteEngine on
RewriteCond %{HTTP_HOST} !^crazysquirrel\.ru$ [NC]
RewriteRule ^(.*)$ https://crazysquirrel.ru/$1 [R=301,L]
RewriteCond %{THE_REQUEST} ^.*/index.php
RewriteRule ^(.*)index.php sek 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 dessa konfigurationer:

  • RewriteEngine on Direktiv är på/av konvertering mekanism (skrivit en för hela htaccess)
  • RewriteCond %{HTTP_HOST} !^crazysquirrel\.ru$ [NC] — fastställande av villkoren för att tillämpa den omvandlar endast till namnet på den webbplats som skiljer sig från den önskade
  • RewriteRule ^(.*)$https://crazysquirrel.ru/$1[R=301,L] — konvertera mekanism omdirigera användaren till "rätt plats namn"
  • RewriteCond %{QUERY_STRING} !^$ [NC] — definierar villkor för omvandling tillämpas endast till adresser som har FÅ parametrar
  • RewriteCond %{THE_REQUEST} \? [NC] — definierar villkor för konvertering endast för de adresser som har ?
  • RewriteCond %{THE_REQUEST} !admin [NC] — definierar transformation regler för adresser som inte är med i sin sammansättning en katalog eller fil, den administrativa panelen av webbplatsen (om platsen har ingen CMS eller dess drift krävs inte FÅ parametrar, denna linje kan inte skriva)
  • crazysquirrel.SV — namnet på webbplatsen
  • admin — katalogen admin panel av webbplatsen
  • indexet.php-main-fil på webbplatsen
  • R=301 flagga som anger http-statuskoden för fel plats (301 — flagga ständig förändring')
  • L — en flagga som indikerar att den sista
  • NC — flagga som visar att denna regel är inte viktigt registrera dig för att skriva
Läser och lämnar kommentarer