Kako postaviti Mod_Rewrite

click fraud protection

The Apači web poslužitelj jedan je od glavnih blokova Interneta, koji opslužuje web stranice i programe. Riječ je o složenom sustavu s mnogo opcija, a jedan od najvažnijih je Rewrite Module ili skraćeno "mod_rewrite". U ovom ćemo članku pogledati načine korištenja mod_rewrite, a zatim istražiti kako to postaviti na vlastitoj web stranici koja se temelji na Apacheu.

Svrha modula za prepisivanje Apache

Svrha ovog modula je prepisivanje URL-ova na razne korisne načine. To znači da će korisnici nakon dolaska na vaše web mjesto putem jednog URL-a (bilo upisivanjem ili odabirom veze koja ga sadrži) "završiti" na drugom URL-u. Postoji nekoliko razloga zbog kojih biste to možda željeli učiniti.

Preusmjeravanje korisnika

Možete koristiti mod_rewrite za usmjeravanje korisnika sa starijih, zastarjelih stranica koje se i dalje mogu pojaviti u rezultatima pretraživanja, na novije, ažurirane stranice. Na primjer, pretpostavimo da imate stranicu na https://www.mysite.com/review2015; ako netko naiđe na ovo kao vezu i odabere ga, možete upotrijebiti pravilo prepisivanja da biste ga usmjerili na http://www.mysite.com/review2019.

instagram viewer

URL-ove je lakše zapamtiti

Vjerojatno ste vidjeli veze povezane s e-trgovinom s URL-ovima poput https://www.thestore.net/3d78654954c29ace998658. Programeri koriste ovakve oznake kako bi osigurali da stavke imaju jedinstveni identifikator, ali za netehničke vrste teško ih je zapamtiti.

Srećom, pravilo ponovnog pisanja može vam pomoći da objavite lijep URL, na primjer https://www.thestore.net/notebooks/spiral/3-subject-spiral/, koja, nakon što slijedi, vodi posjetitelja do onoga s ružnim URL-om.

Jedinstvena imena stranica

U prvim danima Mreže bilo je uobičajeno vidjeti stvarno ime datoteka stranica kada ste posjetili web mjesto. Na primjer, stranica "O nama" na web mjestu može biti " http://www.someguys.org/about.html."

Ali postoji nekoliko razloga zbog kojih više ne vidite toliko puno. Prvo je da mnogim web mjestima upravljaju sustavi za upravljanje sadržajem koji imaju samo nekoliko stvarnih datoteka stranica. Ostatak sadržaja dodaje se dinamički dok se stranica poslužuje, tako da sve stranice mogu izgledati kao da imaju isti URL, poput " http://www.someguys.org/index.php." Prepisivanje URL-ova omogućuje vam izgled ovih zasebnih stranica, a pritom i dalje koristite dinamični CMS za upravljanje web stranicom.

Više razumljivih URL-ova

Tražilice rangiraju stranice više kada imaju lako razumljive URL-ove. To znači da je korisno za web stranice imati URL poput " https://www.thecompany.com/services/consulting" umjesto " https://www.thecompany.com/index.php? section = usluge & stranica = savjetovanje, "jer posljednji dio više sliči na kôd nego na URL.

Prepisivanje osigurava da uvijek stavljate najbolje lice prema naprijed, iz perspektive URL-a.

Kako postaviti mod_rewrite na vašoj web stranici

Korištenje prepisivanja URL-a na Apacheu zahtijeva dvije glavne komponente:

  • Omogućavanje stvarnog modula za prepisivanje unutar Apachea
  • Popis potrebnih pravila za prepisivanje u datoteku .htaccess.

Iako se upotrebe za prepisivanje URL-ova jednako primjenjuju na druge web poslužitelje poput IIS-a ili nginxa, mod_rewrite i metode u nastavku primjenjivat će se samo na Apache.

Omogući funkciju prepisivanja u Apacheu

Prvo ćete morati uključiti funkciju prepisivanja u vašoj instalaciji Apachea.

  1. Morat ćete pronaći gdje se nalazi konfiguracijska datoteka vašeg Apachea. To će ovisiti o instalacijskom programu koji ste koristili.

    • U sustavu Windows trebali biste potražiti direktorij nazvan "/ conf" ispod Apache direktorija za instalaciju.
    • Na macOS-ovom popularnom XAMPP instalacijskom programu nalazi se u / Applications / XAMPP / xamppfiles / apache2 / conf.
    • Na Linuxu bi se pojavio u direktoriju / etc / apache2. U svakom slučaju tražite datoteku nazvanu "httpd.conf", "http.conf" ili "apache2.conf", tako da možete koristiti i značajku pretraživanja vašeg OS-a da biste ih tražili.
  2. Otvorite konfiguracijsku datoteku u uređivaču teksta, na primjer Windows 'Notepad ili Uređivanje teksta na macOS-u.

  3. Potražite redak "#LoadModule rewrite_module modules / mod_rewrite.so" i uklonite hashtag na početku. Ovo označava komentar, što znači da će Apache poslužitelj ignorirati sve u toj liniji kada je tamo. Uklonite hashtag i sljedeći će put Apache izvršiti tu liniju kad se pokrene.

  4. Spremite konfiguracijsku datoteku i ponovno pokrenite Apache poslužitelj.

  5. Na nekim verzijama Linuxa vidjet ćete neke direktorije poput "/ etc / apache2 / mods-available" i "/ etc / apache2 / mods-enabled." Sadrže bitove konfiguracijskih datoteka koje su sastavljene dinamički. U tom slučaju možete pokrenuti sljedeće naredbe da prvo omogućite modul za prepisivanje, a zatim ponovno pokrenite Apache poslužitelj:

    sudo a2enmod prepiši
    systemctl ponovno pokrenite apache2
  6. Sada je vaš Apache poslužitelj spreman da za vas prepiše URL-ove. Tek sada mu morate reći koje će se prepisati i pod kojim okolnostima.

Utvrđivanje pravila Mod_Rewrite na vašoj web lokaciji

Morat ćete definirati pravila za mod_rewrite koristeći jezik regularnih izraza. Srećom, postoji dostupna pomoć. Za dano prepisivanje koje želite omogućiti možete upotrijebiti alat kao što je generator pravila VisioSparka.

  1. Unesite URL s kojeg želite prepisati, tj. Onaj koji će korisnik unijeti, u Iz: polje.

  2. Unesite URL na koji želite prepisati, tj. Onaj na kojem će korisnik završiti, u Do: polje.

    GUI generatori pravila za prepisivanje mogu vam uštedjeti napor učenja RegEx-a
  3. Odaberite kontrolu Captcha, a zatim odaberite Ići. Zatim bi generator trebao pružiti rezultat koji započinje s "RewriteRule.

    Ako slučajno nađete drugi generator, ovi koraci mogu se malo razlikovati, ali nadamo se u istom stadionu.

Unos pravila mod_rewrite za vaše web mjesto

Dakle, ovo je sjajan način usmjeravanja i klika kako biste stvorili ta pravila. Ali gdje ih stavljaš?

Da biste koristili pravila na web mjestu, morat ćete stvoriti datoteku pod nazivom ".htaccess" u korijenu web stranice. Donekle ovisi o platformi gdje se pohranjuju datoteke za određeno web mjesto, ali to ćete morati shvatiti da biste uopće postavili svoje web mjesto tamo.

Možda već postoji datoteka s tim imenom. Ako je tako, sjajno! Možete jednostavno dodati svoje retke u tu datoteku.

  1. Stvorite novu tekstualnu datoteku s imenom ".htaccess"u korijenu vaše web stranice.

  2. U prvi redak unesite donji kod. To govori poslužitelju da želite omogućiti prepisivanje za trenutno web mjesto.

    RewriteEngine uključen
  3. Zatim dodajte svaku liniju koju ste stvorili pomoću generatora. Početak naše datoteke izgledao bi ovako:

    RewriteEngine uključen
    RewriteRule ^ bilježnice / spirala / 3-subjekt-spirala / $ / 3d78654954c29ace998658? &% {QUERY_STRING}
  4. Kao i kod svake promjene konfiguracije Apachea, dobra je ideja ponovno pokrenuti poslužitelj.

Korištenje Mod_Rewrite oduzima vrijeme, ali rezultati vrijede

Korištenje funkcije mod_rewrite na Apacheu definitivno zahtijeva određeni napor. Morate se petljati s tekstualnim konfiguracijskim datotekama, smisliti način da u te datoteke unesete vrlo izbirljive regularne izraze i znati kako ručno zaustaviti i ponovo pokrenuti uslugu. Vjerojatno će trebati puno pokušaja i pogrešaka prije nego što dobijete nešto što ne rezultira pogreškom i ponaša se ispravno.

To je reklo, kad se jednom usudite, dobit ćete veliku korist od mod_rewrite. Vaši će posjetitelji lakše pamtiti vaše URL-ove, a rang na Googleu vjerojatno će se poboljšati. Dobiveni "lijepi URL-ovi" ipak nisu samo za prikazivanje. I oni su funkcionalni.

instagram story viewer