The Apache žiniatinklio serveris yra vienas iš pagrindinių interneto blokų, teikiantis svetaines ir programas. Tai sudėtinga sistema, turinti daug galimybių, ir viena svarbiausių yra perrašymo modulis arba trumpai „mod_rewrite“. Šiame straipsnyje mes apžvelgsime mod_rewrite naudojimo būdus, tada ištirsime, kaip jį nustatyti savo „Apache“ svetainėje.
„Apache“ perrašymo modulio paskirtis
Šio modulio tikslas yra perrašyti URL įvairiais naudingais būdais. Tai reiškia, kad vartotojai, atvykę į jūsų svetainę per vieną URL (įvesdami jį arba pasirinkdami nuorodą, kurioje yra), jie „pateks“ į kitą URL. Yra keletas priežasčių, dėl kurių galite tai padaryti.
Vartotojų peradresavimas
Galite naudoti mod_rewrite nukreipti vartotojus iš senesnių, pasenusių puslapių, kurie vis dar gali būti rodomi paieškos rezultatuose, į naujesnius, naujausius puslapius. Pvz., Tarkime, kad turite puslapį adresu https://www.mysite.com/review2015; jei kas nors tai aptinka kaip nuorodą ir ją pasirenka, galite nukreipti jį naudodami perrašymo taisyklę http://www.mysite.com/review2019.
Lengviau prisiminti URL
Jūs tikriausiai matėte nuorodas, susijusias su el. Prekyba, pvz https://www.thestore.net/3d78654954c29ace998658. Kūrėjai naudoja tokias etiketes, kad įsitikintų, jog daiktai turi unikalų identifikatorių, tačiau netechnikų tipams sunku prisiminti.
Laimei, perrašymo taisyklė gali padėti jums paviešinti gražų URL, pvz., https://www.thestore.net/notebooks/spiral/3-subject-spiral/, kuris, sekdamas lankytoją, nuveda tą, kurio URL yra negražus.
Unikalūs puslapių pavadinimai
Pradžioje žiniatinklio dienomis buvo įprasta matyti tikrąjį puslapio failų pavadinimą, kai lankėtės svetainėje. Pvz., Svetainės „Apie mus“ puslapis gali būti „ http://www.someguys.org/about.html."
Tačiau yra kelios priežastys, dėl kurių nebematote šių dalykų. Pirmoji yra ta, kad daugelį svetainių valdo turinio valdymo sistemos, turinčios tik keletą faktinių puslapio failų. Likęs turinys pridedamas dinamiškai, kai puslapis teikiamas, todėl visi puslapiai gali atrodyti, kad turi tą patį URL, pvz., „ http://www.someguys.org/index.php." URL perrašymas suteikia galimybę atrodyti atskiruose puslapiuose, tačiau vis tiek naudojate dinaminę TVS savo svetainei tvarkyti.
Labiau suprantami URL
Paieškos sistemos reitinguoja puslapius aukščiau, kai turi lengvai suprantamus URL. Tai reiškia, kad svetainėms naudinga turėti tokį URL kaip „ https://www.thecompany.com/services/consulting" vietoj " https://www.thecompany.com/index.php? section = services & page = consulting ", nes paskutinė dalis atrodo labiau kaip kodas, o ne URL.
Perrašinėdami įsitikinkite, kad visada žiūrite į geriausią savo veidą iš URL perspektyvos.
Kaip nustatyti mod_rewrite savo svetainėje
Norint naudoti URL perrašymą „Apache“, reikia dviejų pagrindinių komponentų:
- Įgalinamas tikrasis perrašymo modulis „Apache“
- Būtinų perrašymo taisyklių sąrašas .htaccess faile.
Nors URL perrašymas vienodai taikomas kitiems žiniatinklio serveriams, pvz., IIS ar „nginx“, mod_rewrite ir toliau nurodyti metodai bus taikomi tik „Apache“.
Įgalinti perrašymo funkciją „Apache“
Pirmiausia turėsite įjungti perrašymo funkciją įdiegdami „Apache“.
-
Turėsite sužinoti, kur yra „Apache“ konfigūracijos failas. Tai priklausys nuo jūsų įdiegtos programos.
- „Windows“ sistemoje „Apache“ diegimo kataloge turėtumėte ieškoti katalogo, pavadinto „/ conf“.
- Populiarioje „MacOS“ diegimo programoje „XAMPP“ ji yra aplanke / Applications / XAMPP / xamppfiles / apache2 / conf.
- „Linux“ sistemoje jis pasirodys kataloge / etc / apache2. Bet kokiu atveju ieškote failo, pavadinto „httpd.conf“, „http.conf“ arba „apache2.conf“, kad taip pat galėtumėte naudoti savo OS paieškos funkciją.
Atidarykite konfigūracijos failą, pvz., Teksto rengyklėje „Windows“ bloknotas arba „TextEdit“ „MacOS“.
Ieškokite eilutės „#LoadModule rewrite_module modules / mod_rewrite.so“ ir pradžioje pašalinkite žymą su grotelėmis. Tai reiškia komentarą, ty kai „Apache“ serveris ignoruos viską šioje eilutėje. Pašalinkite žymą su grotelėmis ir kitą kartą, kai „Apache“ vykdys šią eilutę, kai ji bus paleista.
Išsaugokite konfigūracijos failą ir iš naujo paleiskite „Apache“ serverį.
-
Arba kai kuriose „Linux“ versijose pamatysite keletą katalogų, pvz., „/ Etc / apache2 / mods-available“ ir „/ etc / apache2 / mods-enabled“. Juose yra konfigūracijos failų bitai, kurie yra sujungti dinamiškai. Tokiu atveju galite paleisti šias komandas, kad pirmiausia įgalintumėte perrašymo modulį, tada iš naujo paleiskite „Apache“ serverį:
sudo a2enmod perrašyti
systemctl paleiskite iš naujo apache2 Dabar jūsų „Apache“ serveris yra pasirengęs perrašyti URL už jus. Tik dabar reikia pasakyti, kuriuos perrašyti ir kokiomis aplinkybėmis.
„Mod_Rewrite“ taisyklių nustatymas jūsų svetainėje
Turėsite apibrėžti „mod_rewrite“ taisykles naudodami įprastos išraiškos kalbą. Laimei, yra tam tikra pagalba. Tam tikram perrašymui, kurį norite įgalinti, galite naudoti tokį įrankį kaip „VisioSpark“ taisyklių generatorius.
Įveskite URL, kurį norite perrašyti, t. Y. Tą, kurį įves vartotojas Nuo: srityje.
-
Įveskite URL, į kurį norite perrašyti, t. Y. Tą, į kurį pateks vartotojas Kam: srityje.
-
Pasirinkite „Captcha“ valdiklį, tada pasirinkite Eik. Tada generatorius turėtų pateikti rezultatą, prasidedantį "RewriteRule.
Jei atsitiktų rasti kitą generatorių, šie veiksmai gali būti šiek tiek kitokie, tačiau, tikiuosi, toje pačioje aikštelėje.
Įvedate savo svetainės „Mod_Rewrite“ taisykles
Taigi tai yra puikus būdas spustelėti ir spustelėti šias taisykles. Bet kur juos dėti?
Norėdami naudoti taisykles svetainėje, turite sukurti failą, vadinamą „.htaccess“, svetainės šaknyje. Tai šiek tiek priklauso nuo platformos, kur saugomi tam tikros svetainės failai, tačiau turėsite tai suprasti, kad pirmiausia ten įdiegtumėte savo svetainę.
Tokiu pavadinimu jau gali būti failas. Jei taip, puiku! Galite tiesiog pridėti savo eilutes prie to failo.
Sukurkite naują tekstinį failą pavadinimu ".htaccess„jūsų svetainės šaknyje.
-
Pirmoje eilutėje įveskite žemiau esantį kodą. Tai nurodo serveriui, kurį norite įjungti dabartinės svetainės perrašymą.
„RewriteEngine“ įjungta
-
Tada pridėkite kiekvieną iš jūsų sukurtų eilučių su generatoriumi. Mūsų failo pradžia atrodys taip:
„RewriteEngine“ įjungta
RewriteRule ^ nešiojamieji kompiuteriai / spiralė / 3 objektų spiralė / $ / 3d78654954c29ace998658? &% {QUERY_STRING} Kaip ir atliekant bet kokius „Apache“ konfigūracijos pakeitimus, patartina iš naujo paleisti serverį.
„Mod_Rewrite“ naudojimas užima laiko, tačiau rezultatai to verti
„Apache“ mod_rewrite funkcijos naudojimas tikrai reikalauja tam tikrų pastangų. Turite blaškytis su tekstiniais konfigūracijos failais, išsiaiškinti būdą, kaip į tuos failus įtraukti labai smulkius reguliarius posakius, ir žinoti, kaip rankiniu būdu sustabdyti ir iš naujo paleisti paslaugą. Tikriausiai reikės daug bandymų ir klaidų, kol gausite tai, dėl ko nebus padaryta klaida ir kuris elgsis teisingai.
Tai sakant, kai jūs tai sužinosite, gausite daug naudos iš mod_rewrite. Lankytojai galės geriau atsiminti jūsų URL ir jūsų reitingas „Google“ greičiausiai pagerės. Gauti „gražūs URL“ juk nėra skirti tik parodyti. Jie taip pat funkcionalūs.