Teadmistebaas Juhendvideod Lihtsad juhised Profitserveri teenusega töötamiseks
põhiline Teadmistebaas Juhendvideod Htaccess-faili seadistamine

Htaccess-faili seadistamine


Selles artiklis uurime SEO täiustamiseks üliolulise .htaccess-faili kasutamise aluspõhimõtteid. See fail tagab lehtede õige indekseerimise otsingumootorite poolt. Õpime, kuidas hallata ümbersuunamisi, konfigureerida turvalisust ja suurendada jõudlust. Lisaks anname näpunäiteid selle faili iseseisvaks konfigureerimiseks.

Miks .htaccess on vajalik?

Htaccess-fail toimib Apache serverites veebiarendajatele omamoodi "kaugjuhtimispuldina". See pakub mugavaid tööriistu erinevate parameetrite reguleerimiseks ja veebisaidi käitumise haldamiseks. Kui otsene juurdepääs serveri peamistele konfiguratsioonifailidele pole saadaval (nagu näiteks virtuaalse hostimise puhul sageli juhtub), muutub .htaccess kasulikuks tööriistaks vajalike muudatuste tegemiseks.

Htaccess asub sageli teie saidi juurkaustas või nendes kaustades, mis vajavad spetsiaalset konfiguratsiooni. Näiteks kui kasutate WordPressi, saab konfigureerimise teha Yoast SEO plugina kaudu, mida me käsitlesime artiklis robots.txt seadistamise kohta . Muudel juhtudel piisab vajaliku kausta minemisest ja olemasoleva .htaccess-faili muutmisest või selle loomisest, kui seda pole veel loodud.

Htaccess-faili seadistamine

301 Suuna htaccess ümber

301 ümbersuunamist .htaccess-failis saab võrrelda püsiva ümbersuunamisega veebisaidil. See teavitab otsingumootoreid ja brausereid, et leht asub nüüd püsivalt uuel aadressil ning soovitab järjehoidjaid ja indekseerimist värskendada. Sellist ümbersuunamist kasutatakse tavaliselt lehe teisaldamisel või kustutamisel, et säilitada selle asetus otsingutulemustes ja suunata külastajad uude asukohta.

Ümbersuunamiste aktiveerimiseks peate lubama vastava käsu .htaccess-failis:

RewriteEngine on

Pärast seda saate konfigureerida lihtsaima ümbersuunamise vormi:

<IfModule mod_rewrite.c>
RewriteEngine On
Redirect 301 /old-page.html /new-page.html
</IfModule>

Sarnane ümbersuunamine RedirectPermanent direktiivi abil näeb välja selline:

<IfModule mod_rewrite.c>
RewriteEngine On
Redirect permanent /old-page.html http://new-domain.ru/new-page.html
</IfModule>

Need on ümbersuunamismeetodid, mida on kõige lihtsam seadistada. Vaatleme konfiguratsiooni, mis kasutab mod_rewrite mooduliga teisi, keerukamaid ümbersuunamistüüpe:

<IfModule mod_rewrite.c>
RewriteEngine On
    
# Redirecting from one page to another
RewriteRule ^old-page.html$ http://www.example.com/new-page.html [R=301,L]

# Redirecting all traffic from one domain to another
RewriteCond %{HTTP_HOST} ^oldsite.com$ [OR]
RewriteCond %{HTTP_HOST} ^www.oldsite.com$
RewriteRule ^(.*)$ http://www.newsite.com/$1 [R=301,L]
    
# Redirecting from www to non-www (or vice versa)
RewriteCond %{HTTP_HOST} ^www.example.com$
RewriteRule ^(.*)$ http://example.com/$1 [R=301,L]

# Redirecting from HTTP to HTTPS
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://www.example.com/$1 [R=301,L]

# Redirecting from one subdomain to another
RewriteCond %{HTTP_HOST} ^subdomain1.example.com$
RewriteRule ^(.*)$ http://subdomain2.example.com/$1 [R=301,L]
</IfModule>

302 ümbersuunamist .htaccess, mis viitab ajutisele ümberpaigutamisele, kohtab palju harvemini. Siin on näide sellisest seadistusest:

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteRule ^old-page.html$ /new-page.html [R=302,L]
</IfModule>

Direktiiv ErrorDocument

See seade võimaldab teil juhtida seda, mida kasutaja näeb, kui teie saidil ilmnevad HTTP-tõrked. Tavalise veateate asemel saad näidata enda lehte, mis on külastajale informatiivsem ja aitab juhtunust aru saada. Kasutamiseks järgige lihtsalt seda süntaksit:

ErrorDocument <error_code> <URL_page>

Näiteks

ErrorDocument 404 /errors/not_found.html

See tähendab, et 404 vea ilmnemisel avatakse leht aadressil /errors/not_found.html . Absoluutsed URL-id määratakse sarnaselt:

ErrorDocument 500 http://example.com/errors/server_error.html

See näide kujutab server_error.html lehe kuvamist aadressil http://example.com/errors/ 500- vea korral.

Saidikataloogile juurdepääsu keelamine

.htaccess-failil on käsk „ Keela kõigilt ”, mis aitab keelata juurdepääsu teatud kaustadele või failidele teie veebiserveris. See võib olla kasulik, kui soovite andmete turvalisuse tagamiseks peita privaatset teavet või olulisi faile saidi külastajate eest.

Loendi keelamiseks (kõikide saadaolevate kataloogide vaatamiseks) peate lisama rea:

Options -Indexes

Näide konkreetsele kataloogile juurdepääsu blokeerimisest näeb välja järgmine:

<Directory /path_to_your_directory>
Order Deny,Allow
Deny from all
</Directory>

Samamoodi saate keelata juurdepääsu ühele failile:

<Files "file.php">
Order Deny,Allow
Deny from all
</Files>

Või laiendiga failide jaoks:

<FilesMatch "\.(txt|log|bak)$"> # Select the desired extensions, in the example: txt, log, bak
Order Deny,Allow
Deny from all
</FilesMatch>

Juurdepääsu blokeerimine IP kaudu

Juurdepääsu blokeerimine IP alusel .htaccess-failis on meetod, mis võimaldab piirata juurdepääsu oma veebisaidile teatud IP-aadresside või nende rühmade jaoks. See võib olla kasulik, kui soovite takistada teatud inimeste või soovimatute robotite juurdepääsu oma saidile või selle konkreetsetele osadele.

Ühe IP-aadressi blokeerimine toimub käsuga:

Order Deny,Allow
Allow from all
Deny from 11.22.33.44

Mitme IP-aadressi blokeerimine toimub sarnaselt, dubleerides rea " Deny from " vajalike aadressidega.

IP-aadresside vahemiku blokeerimiseks:

Order Deny,Allow
Allow from all
Deny from 11.11.11.11/24

Juurdepääsu lubamiseks ainult kindlatele IP-dele lisage kood:

Order Deny,Allow
Deny from all
Allow from 11.22.33.44

Juurdepääsu täielikuks keelamiseks kasutage direktiivi Deny from all ja aadresside maski abil blokeerimiseks määrake Deny from 11.22.

Kus 11.22 on IP-aadressi mask.

Külastajate blokeerimine kasutajaagendi poolt

Kasutajate blokeerimine kasutajaagendi abil .htaccess-failis on meetod, mille abil saab külastaja kasutatava brauseri teabe põhjal kontrollida, kes pääseb teie veebiserverile juurde. String User-Agent sisaldab andmeid brauseri kohta, mida inimene teie serveriga suhtlemiseks kasutab, ja tänu sellele teabele saate piirata teatud kasutajate juurdepääsu.

Kasutajaagendi kõige levinum blokeerimisviis on mod_rewrite kasutamine :

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{HTTP_USER_AGENT} ^Bot1 [NC,OR]
RewriteCond %{HTTP_USER_AGENT} ^Bot2 [NC,OR]
RewriteCond %{HTTP_USER_AGENT} ^Bot3 [NC]
RewriteRule ^.*$ - [F,L]
</IfModule>

Selles näites:

  1. RewriteCond %{HTTP_USER_AGENT} kasutatakse kasutajaagendi stringi kontrollimiseks.
  2. ^Bot1, ^Bot2, ^Bot3 on näited kasutajaagendi stringidest, mida tahame blokeerida. NC modifikaatorid näitavad, et võrdlus ei tohiks olla tõstutundlik.
  3. RewriteRule ^.*$ – [F,L] rakendub päringule, kui mõni RewriteCond tingimus on täidetud. See saadab vastuse 403 keelatud olekukoodiga (F) ja peatab reeglite töötlemise (L).

Vahemälu htaccessis

Vahemälu konfigureerimine .htaccess-faili kaudu aitab teie saiti kiirendada, muutes selle kasutajate jaoks kiiremaks. See toimib järgmiselt: teatud failid, nagu pildid, CSS-stiilid ja JavaScripti skriptid, salvestatakse pärast esimest laadimist kasutaja brauseri vahemällu. Nüüd saab brauser neid faile vahemälust kasutada, selle asemel, et neid iga kord, kui kasutaja lehte külastab, serverist uuesti laadida. See vähendab laadimisaega ja parandab saidi jõudlust.

Kaaluge näidet:

# Enable caching for images for 1 month
<FilesMatch "\.(jpg|jpeg|png|gif|svg)$">
Header set Cache-Control "max-age=2592000, public"
</FilesMatch>

# Enable caching for CSS and JavaScript for 1 week
<FilesMatch "\.(css|js)$">
Header set Cache-Control "max-age=604800, public"
</FilesMatch>

Sageli värskendatavate ressursside puhul on aga vaja vahemällu salvestamine keelata:

# Excluding caching for HTML pages and XML files
<FilesMatch "\.(html|xml)$">
Header set Cache-Control "no-cache, no-store, must-revalidate"
Header set Pragma "no-cache"
Header set Expires "0"
</FilesMatch>

Saidi toimivuse optimeerimine

Apache'i moodulid mod_deflate ja mod_gzip aitavad tihendada teavet, mida server kasutajate seadmetesse saadab. See muudab failid väiksemaks, mis omakorda kiirendab lehtede laadimist. Siiski on oluline meeles pidada, et nende moodulite tugi ja konfiguratsioon võivad serverist olenevalt erineda.

Näide mod_deflate mooduli kasutamisest :

<IfModule mod_deflate.c>
# Compressing text file types
AddOutputFilterByType DEFLATE text/plain
AddOutputFilterByType DEFLATE text/html
AddOutputFilterByType DEFLATE text/xml
AddOutputFilterByType DEFLATE text/css
AddOutputFilterByType DEFLATE application/xml
AddOutputFilterByType DEFLATE application/xhtml+xml
AddOutputFilterByType DEFLATE application/rss+xml
AddOutputFilterByType DEFLATE application/javascript
AddOutputFilterByType DEFLATE application/x-javascript
AddOutputFilterByType DEFLATE application/x-httpd-php
AddOutputFilterByType DEFLATE application/x-httpd-fastphp
AddOutputFilterByType DEFLATE image/svg+xml
</IfModule>

Näide mod_gzip kohta :

<IfModule mod_gzip.c>
mod_gzip_on Yes
mod_gzip_dechunk Yes
mod_gzip_item_include file .(html?|txt|css|js|php|pl)$ # Enabling compression for files with extensions .html, .txt, .css, .js, .php, .pl
mod_gzip_item_include mime ^application/x-javascript.* # Enabling compression for MIME types starting with application/x-javascript
mod_gzip_item_include mime ^text/.* # Enabling compression for MIME types starting with text/
mod_gzip_item_exclude mime ^image/.* # Excluding from compression MIME types starting with image/
mod_gzip_item_exclude rspheader ^Content-Encoding:.*gzip.* # Excluding already compressed data (responses with the Content-Encoding: gzip header)
</IfModule>

Arutasime kõige sagedamini kasutatavaid direktiive. Faili kõigi võimalustega saate tutvuda ametlikus dokumentatsioonis.

Kuidas kontrollida .htaccess-faili funktsionaalsust

Kontrollimaks, kas teie .htaccess-fail sellel saidil töötab, tehke järgmist.

  1. Muutke tahtlikult veaga .htaccess-faili. Vastuseks peaks server andma veateate. See meetod näitab, kas faili toiming on serveris üldiselt rakendatud.
  2. Kontrollige konkreetsete tehtud muudatuste funktsionaalsust. Näiteks tehke mõnda parameetrit väike muudatus ja hinnake muudatuste olemasolu.
  3. Kontrollige lehe olekukoodi, kui muudatused on seotud serveri vastusega. Kuidas seda teha, kirjeldasime artiklis varem HTTP veakoodid: täielik serverivigade loend.
  4. Vaadake serveri logisid. Need kuvavad kõik .htaccess-faili toimimisega seotud vead.
  5. Testige läbi võrguteenuste või -tööriistade abil.

Oluline on mõista, et .htaccess-faili funktsionaalsuse kontrollimiseks ei pea te kõiki toiminguid korraga tegema. Piisab, kui valida loendist kõige sobivam meetod ja seda kasutada.

Järeldus

Htaccess-faili konfigureerimine on oluline samm teie Apache serveri optimeerimisel ja kaitsmisel. Oleme uurinud, kuidas see fail aitab ümbersuunamisi hallata, sisu tihendada ja turvalisust tagada. Kui olete õppinud .htaccessiga töötama, saate võimsa tööriista veebisaitide jõudluse ja funktsionaalsuse parandamiseks.


Küsige meilt VPS-i kohta

Oleme alati valmis vastama teie küsimustele igal kellaajal päeval või öösel.