25 naudingos „Apache“ „.htaccess“ gudrybės, skirtos svetainėms apsaugoti ir tinkinti


Tinklalapiai yra svarbi mūsų gyvenimo dalis. Jie padeda plėsti verslą, dalytis žiniomis ir dar daugiau. Anksčiau buvo apsiribota tik statinio turinio teikimu, įdiegus dinamines kliento ir serverio scenarijų kalbas ir nuolat tobulinant esamas statines kalbas, pvz., html, į html5, todėl svetainėse buvo galima suteikti kuo daugiau dinamiškumo, o tai, kas liko, tikimasi artimiausiu metu. ateitis.

Naudojant svetaines, reikia įrenginio, kuris galėtų rodyti šias svetaines didžiulei auditorijai visame pasaulyje. Šį poreikį patenkina serveriai, kurie suteikia priemones svetainei talpinti. Tai apima sąrašą serverių, tokių kaip: Apache HTTP serveris, Joomla ir WordPress, kurie leidžia priglobti savo svetaines.

Asmuo, norintis talpinti svetainę, gali susikurti savo vietinį serverį arba susisiekti su bet kuriuo iš aukščiau paminėtų ar bet kuriuo kitu serverio administratoriumi, kad priglobtų savo svetainę. Tačiau tikroji problema prasideda nuo šio taško. Svetainės našumas daugiausia priklauso nuo šių veiksnių:

  1. Svetainės sunaudojamas pralaidumas.
  2. Kiek svetainė yra apsaugota nuo įsilaužėlių.
  3. Optimizmas, kai kalbama apie duomenų paiešką duomenų bazėje
  4. Patogus vartotojui, kai reikia rodyti naršymo meniu ir teikti daugiau vartotojo sąsajos funkcijų.

Be to, įvairūs veiksniai, lemiantys serverių sėkmę prieglobos tinklalapiuose, yra šie:

  1. Konkrečios svetainės duomenų suspaudimo kiekis.
  2. Galimybė vienu metu aptarnauti kelis klientus, kurie prašo tos pačios ar skirtingos svetainės.
  3. Konfidencialių duomenų, įvestų į svetaines, apsauga, pavyzdžiui: el. laiškai, kredito kortelės duomenys ir pan.
  4. Leidžiama vis daugiau galimybių padidinti svetainės dinamiškumą.

Šiame straipsnyje aptariama viena iš tokių serverių teikiamų funkcijų, padedančių pagerinti svetainių našumą ir apsaugoti jas nuo blogų robotų, karštųjų nuorodų ir kt., t. y. failas „.htaccess“.

Kas yra .htaccess?

htaccess (arba hiperteksto prieiga) yra failai, kuriuose svetainių savininkai gali valdyti serverio aplinkos kintamuosius ir kitus parametrus, kad pagerintų savo svetainių funkcionalumą. Šie failai gali būti bet kuriame ir kiekviename svetainės katalogų medžio kataloge ir suteikti funkcijų katalogui bei jame esantiems failams ir aplankams.

Kokios yra šios savybės? Na, tai yra serverio direktyvos, ty eilutės, kurios nurodo serveriui atlikti konkrečią užduotį, ir šios direktyvos taikomos tik failams ir aplankams, esantiems aplanke, kuriame šis failas yra. Pagal numatytuosius nustatymus šie failai yra paslėpti, nes pagal numatytuosius nustatymus visos operacinės sistemos ir žiniatinklio serveriai yra sukonfigūruoti taip, kad jų nepaisytų, tačiau padarę paslėptus failus matomus, galite pamatyti šį labai ypatingą failą. Kokio tipo parametrus galima valdyti, bus aptariama tolesniuose skyriuose.

Pastaba: jei .htaccess failas įdėtas į /apache/home/www/Gunjit/ katalogą, tada jis pateiks nurodymus visiems tame kataloge esantiems failams ir aplankams, tačiau jei šiame kataloge yra kitas aplankas, būtent: /Gunjit/images/, kuriame vėl yra kitas .htaccess failas, tada šiame aplanke esančios direktyvos nepaisys tų, kurios pateiktos pagrindiniame .htaccess faile (arba faile, esančiame aplanke aukščiau hierarchijos).

Apache serveris ir .htaccess failai

Apache HTTP serveris, šnekamojoje kalboje vadinamas Apache, buvo pavadintas Amerikos indėnų genties Apache vardu, siekiant gerbti savo pranašesnius karybos strategijos įgūdžius. Sukurtas ant C/C++ ir XML, tai yra kelių platformų žiniatinklio serveris, pagrįstas NCSA HTTPd serveriu ir vaidinantis pagrindinį vaidmenį pasaulinio žiniatinklio augime ir tobulėjimui.

Dažniausiai UNIX sistemoje naudojama Apache yra prieinama įvairioms platformoms, įskaitant FreeBSD, Linux, Windows, Mac OS, Novel Netware ir kt. 2009 m. Apache tapo pirmuoju serveriu, aptarnaujančiu daugiau nei 100 milijonų svetainių.

Apache serveris turi vieną .htaccess failą kiekvienam vartotojui www/ kataloge. Nors šie failai yra paslėpti, bet prireikus gali būti matomi. Kataloge www/ yra keletas aplankų, kurių kiekvienas yra susijęs su svetaine, pavadinta vartotojo arba savininko vardu. Be to, kiekviename aplanke galite turėti vieną .htaccess failą, kuris sukonfigūravo failus tame aplanke, kaip nurodyta aukščiau.

Kaip sukonfigūruoti htaccess failą Apache serveryje, yra taip…

Konfigūracija „Apache“ serveryje

Gali būti du atvejai:

Svetainės talpinimas savo serveryje

Tokiu atveju, jei .htaccess failai neįjungti, galite įjungti .htaccess failus tiesiog apsilankę httpd.conf (numatytasis konfigūracijos failas Apache HTTP Daemon) ir suraskite skyrių .

<Directory "/var/www/htdocs">

Ir suraskite eilutę, kuri sako…

AllowOverride None 

Ir pataisykite tai.

AllowOverride All

Dabar, iš naujo paleidus „Apache“, veiks .htaccess.

Svetainės priegloba skirtinguose prieglobos paslaugų teikėjų serveryje

Tokiu atveju geriau pasikonsultuoti su prieglobos administratoriumi, jei jis leidžia pasiekti .htaccess failus.

25 „.htaccess“ „Apache“ žiniatinklio serverio gudrybės svetainėms

1. Kaip įjungti mod_rewrite .htaccess faile

Parinktis mod_rewrite leidžia naudoti peradresavimus ir paslėpti tikrąjį URL nukreipiant į kitą URL. Ši parinktis gali pasirodyti labai naudinga, nes galite pakeisti ilgą ir ilgą URL trumpais ir lengvai įsimenamais.

Norėdami leisti mod_rewrite, tiesiog pabandykite pridėti šią eilutę kaip pirmąją failo .htaccess eilutę.

Options +FollowSymLinks

Ši parinktis leidžia sekti simbolines nuorodas ir taip svetainėje įjungti parinktį mod_rewrite. URL pakeitimas trumpu ir traškiu bus pateiktas vėliau.

2. Kaip leisti arba uždrausti prieigą prie svetainių

Failas htaccess gali leisti arba uždrausti prieigą prie svetainės arba aplanko ar failų kataloge, kuriame jis yra, naudojant užsakyti, leisti ir < b>neleisti raktinius žodžius.

Leidžiama pasiekti tik 192.168.3.1 IP
Order Allow, Deny
Deny from All
Allow from 192.168.3.1

OR

Order Allow, Deny
Allow from 192.168.3.1

Raktinis žodis Užsakyti čia nurodo tvarką, kuria būtų apdorojama leisti, neleisti prieiga. Aukščiau pateiktame sakinyje „Užsakyti“ pirmiausia būtų apdorojami teiginiai Leisti, o tada – neleisti.

Neleidžiama pasiekti tik vieno IP adreso

Toliau pateiktose eilutėse pateikiamos priemonės, leidžiančios pasiekti svetainę visiems vartotojams, sutinkantiems su IP adresu: 192.168.3.1.

rder Allow, Deny
Deny from 192.168.3.1
Allow from All

OR


Order Deny, Allow
Deny from 192.168.3.1

3. Sukurkite Apache Error dokumentus skirtingiems klaidų kodams.

Naudodami keletą paprastų eilučių galime pataisyti klaidos dokumentą, kuris veikia naudojant skirtingus serverio sugeneruotus klaidų kodus, kai vartotojas/klientas prašo puslapio, kurio nėra svetainėje, kaip daugelis iš mūsų būtų matę „404 puslapis nerastas<.“ savo interneto naršyklėje. Failai „.htaccess“ nurodo, kokių veiksmų reikia imtis tokių klaidų atveju.

Norėdami tai padaryti, prie „.htaccess“ failų reikia pridėti šias eilutes:

ErrorDocument <error-code> <path-of-document/string-representing-html-file-content>

ErrorDocument“ yra raktinis žodis, klaidos kodas gali būti bet kuris iš 401, 403, 404, 500 arba bet kokia tinkama klaida, nurodanti kodą ir galiausiai „dokumento kelias“ reiškia kelią vietiniame kompiuteryje (jei naudojate savo vietinį serverį) arba serveryje (jei naudojate bet kurio kito serverio jūsų svetainei priglobti).

Pavyzdys :
ErrorDocument 404 /error-docs/error-404.html

Aukščiau pateiktoje eilutėje dokumentas „error-404.html“, patalpintas aplanke error-docs, bus rodomas tuo atveju, jei serveris praneštų apie 404 klaidą dėl bet kokios netinkamos užklausos už kliento puslapį.

rrorDocument 404 "<html><head><title>404 Page not found</title></head><body><p>The page you request is not present. Check the URL you have typed</p></body></html>"

Aukščiau pateiktas vaizdavimas taip pat yra teisingas, įterpiant eilutę, vaizduojančią įprastą html failą.

4. Apache serverio aplinkos kintamųjų nustatymas/atšaukimas

Faile .htaccess galite nustatyti arba atšaukti visuotinius aplinkos kintamuosius, kuriuos serveris leidžia keisti svetainių prieglobos serveriams. Norėdami nustatyti arba atšaukti aplinkos kintamuosius, į savo .htaccess failus turite įtraukti šias eilutes.

Aplinkos kintamųjų nustatymas
SetEnv OWNER “Gunjit Khera”
Aplinkos kintamųjų atšaukimas
UnsetEnv OWNER

5. Skirtingų MIME tipų nustatymas failams

MIME (Daugiafunkciniai interneto daugialypės terpės plėtiniai) yra tipai, kuriuos pagal numatytuosius nustatymus atpažįsta naršyklė paleisdama bet kurį tinklalapį. Savo svetainės MIME tipus galite apibrėžti .htaccess failuose, kad serveris galėtų atpažinti ir paleisti skirtingus jūsų apibrėžtus failų tipus.

<IfModule mod_mime.c>
	AddType	application/javascript		js
	AddType application/x-font-ttf		ttf ttc
</IfModule>

Čia mod_mime.c yra modulis, skirtas valdyti skirtingų MIME tipų apibrėžimus. Jei šis modulis yra įdiegtas jūsų sistemoje, galite naudoti šį modulį, norėdami apibrėžti skirtingus MIME tipus skirtingiems plėtiniams, naudojamiems jūsų svetainėje. kad serveris galėtų juos suprasti.

6. Kaip apriboti įkėlimų ir atsisiuntimų dydį „Apache“.

Failai .htaccess suteikia galimybę valdyti duomenų kiekį, kurį konkretus klientas įkelia arba atsisiunčia iš jūsų svetainės. Norėdami tai padaryti, prie .htaccess failo tereikia pridėti šias eilutes:

php_value upload_max_filesize 20M
php_value post_max_size 20M
php_value max_execution_time 200
php_value max_input_time 200

Aukščiau pateiktose eilutėse nustatytas maksimalus įkėlimo dydis, maksimalus skelbiamų duomenų dydis, maksimalus vykdymo laikas, t. y. maksimalus laikas, kurį vartotojui leidžiama paleisti svetainę savo vietiniame kompiuteryje, didžiausias įvesties laiko apribojimas.