Kuidas seadistada Mod_Rewrite

click fraud protection

The Apache veebiserver on üks peamisi Interneti komponente, mis teenindab veebisaite ja rakendusi. See on keeruline süsteem, millel on palju võimalusi ja üks olulisemaid on ümberkirjutamise moodul ehk lühidalt "mod_rewrite". Selles artiklis vaatleme mod_rewrite'i kasutusviise ja uurime, kuidas seda oma Apache-põhisel saidil seadistada.

Apache'i ümberkirjutamise mooduli eesmärk

Selle mooduli eesmärk on URL-ide ümberkirjutamine mitmel kasulikul viisil. See tähendab, et kui kasutajad jõuavad teie veebisaidile ühe URL-i kaudu (kas sisestades selle või valides seda sisaldava lingi), jõuavad nad teisele URL-ile. Seda võiksite teha mitmel põhjusel.

Kasutajate ümbersuunamine

Mod_rewrite'i abil saate suunata kasutajad vanematelt, aegunud lehtedelt, mis võivad endiselt otsingutulemites ilmuda, uuematele ja ajakohasematele lehtedele. Oletame näiteks, et teil on leht aadressil https://www.mysite.com/review2015; kui keegi leiab selle lingina ja valib selle, saate suunamiseks kasutada ümberkirjutamise reeglit http://www.mysite.com/review2019.

instagram viewer

URL-e on lihtsam meelde jätta

Ilmselt olete näinud e-kaubandusega seotud linke URL-idega https://www.thestore.net/3d78654954c29ace998658. Arendajad kasutavad selliseid silte, et üksustel oleks ainulaadne identifikaator, kuid mittetehniliste tüüpide puhul on seda raske meeles pidada.

Õnneks võib uuesti kirjutamise reegel aidata teil näiteks kena URL-i avalikustada https://www.thestore.net/notebooks/spiral/3-subject-spiral/, mis jälgimisel viib külastaja inetu URL-iga.

Unikaalsed lehenimed

Veebi alguspäevil oli tavaline näha veebisaidi külastamisel lehefailide tegelikku nime. Näiteks võib veebisaidi leht "Meie kohta" olla http://www.someguys.org/about.html."

Kuid on paar põhjust, miks te neid enam eriti ei näe. Esimene on see, et paljusid veebisaite haldavad sisuhaldussüsteemid, millel on ainult käputäis tegelikke lehefaile. Ülejäänud sisu lisatakse lehe esitamisel dünaamiliselt, nii et kõik lehed võivad tunduda sama URL-iga, näiteks " http://www.someguys.org/index.php." URL-i ümberkirjutamine võimaldab teil olla nende eraldi lehtede välimus, kasutades oma veebisaidi haldamiseks siiski dünaamilist CMS-i.

Rohkem arusaadavaid URL-e

Otsingumootorid reastavad lehti kõrgemale, kui neil on hõlpsasti mõistetavad URL-id. See tähendab, et veebisaitidel on kasulik omada URL-i nagu " https://www.thecompany.com/services/consulting" selle asemel " https://www.thecompany.com/index.php? section = services & page = consulting, "kuna viimane osa näeb välja pigem kood kui URL.

Ümberkirjutamine tagab, et teete URL-i vaatenurgast alati oma parima näo.

Kuidas oma saidil mod_rewrite'i seadistada

URL-i ümberkirjutamise kasutamine Apache'is nõuab kahte põhikomponenti:

  • Tegeliku ümberkirjutamise mooduli lubamine Apache'is
  • Vajalike ümberkirjutamise reeglite loetelu .htaccess-failis.

Kuigi URL-ide ümberkirjutamise kasutusalad kehtivad võrdselt ka teiste veebiserverite (nt IIS või nginx) jaoks, kehtivad mod_rewrite ja allpool toodud meetodid ainult Apache'i puhul.

Luba Apache'is ümberkirjutamise funktsioon

Kõigepealt peate oma Apache'i installimisel ümberkirjutamise funktsiooni sisse lülitama.

  1. Peate leidma, kus asub teie Apache'i konfiguratsioonifail. See sõltub kasutatavast installerist.

    • Windowsis peaksite Apache'i installikataloogist otsima kataloogi nimega "/ conf".
    • MacOS-i populaarses XAMPP-installeris asub see rakenduses / Applications / XAMPP / xamppfiles / apache2 / conf.
    • Linuxis kuvatakse see kataloogis / etc / apache2. Igal juhul otsite faili nimega "httpd.conf", "http.conf" või "apache2.conf", nii et saate nende otsimiseks kasutada ka oma OS-i otsingufunktsiooni.
  2. Ava konfigureerimisfail tekstiredaktoris Windowsi märkmik või Tekstiredigeeri MacOS-is.

  3. Otsige üles rida "#LoadModule rewrite_module modules / mod_rewrite.so" ja eemaldage alguses silt. See tähistab kommentaari, mis tähendab, et kui see seal on, ignoreerib Apache server kõike, mis sellel real on. Eemaldage räsimärk ja järgmine kord täidab Apache selle rea käivitamisel.

  4. Salvestage konfiguratsioonifail ja taaskäivitage Apache server.

  5. Alternatiivina näete mõnes Linuxi versioonis mõnda kataloogi nagu "/ etc / apache2 / mods-available" ja "/ etc / apache2 / mods-enabled." Need sisaldavad kokku pandud konfiguratsioonifailide bitti dünaamiliselt. Sellisel juhul võite esmalt mooduli ümberkirjutamise lubamiseks käivitada järgmised käsud ja seejärel taaskäivitada Apache server:

    sudo a2enmod kirjuta ümber
    systemctl taaskäivitage apache2
  6. Nüüd on teie Apache-server valmis teie jaoks URL-id ümber kirjutama. Alles nüüd peate ütlema, millised ümber kirjutada ja mis tingimustel.

Mod_Rewrite reeglite määratlemine oma saidil

Peate määrama mod_rewrite'i reeglid, kasutades regulaaravaldise keelt. Õnneks on abi saadaval. Antud ümberkirjutamiseks, mille soovite lubada, võite kasutada sellist tööriista nagu VisioSparki reeglite generaator.

  1. Sisestage URL-i, millest soovite kirjutada, st see, mille kasutaja sisestab Saatja: valdkonnas.

  2. Sisestage URL-i, kuhu soovite ümber kirjutada, see tähendab see, kuhu kasutaja jõuab Saaja: valdkonnas.

    Graafiliste kasutajaliideste reegli generaatorid võivad säästa RegExi õppimise pingutusi
  3. Valige Captcha juhtelement ja seejärel valige Mine. Seejärel peaks generaator andma tulemuse, mis algab tähega "RewriteRule.

    Kui juhtute leidma mõne muu generaatori, võivad need sammud olla veidi erinevad, kuid loodetavasti samas palliplatsis.

Sisestades oma saidi Mod_Rewrite reeglid

Nii et see on suurepärane, näpuga klõpsamise viis nende reeglite koostamiseks. Aga kuhu sa need paned?

Reeglite kasutamiseks veebisaidil peate looma veebisaidi juuresse faili nimega .htaccess. See on mõnevõrra platvormist sõltuv, kus konkreetse veebisaidi faile hoitakse, kuid peate oma veebisaidi sinna paigutamiseks esmalt selle välja mõtlema.

Selle nimega fail võib juba olla. Kui jah, siis tore! Võite lihtsalt lisada oma read sellesse faili.

  1. Looge uus tekstifail nimega ".htaccess"oma veebisaidi juur.

  2. Esimesele reale sisestage allpool olev kood. See ütleb serverile, et soovite praeguse veebisaidi ümberkirjutamise lubada.

    RewriteEngine on sees
  3. Järgmisena lisage kõik generaatoriga loodud read. Meie faili algus näeks välja selline:

    RewriteEngine on sees
    RewriteRule ^ märkmikud / spiraal / 3-teemaline spiraal / $ / 3d78654954c29ace998658? &% {QUERY_STRING}
  4. Nagu kõigi Apache'i konfiguratsioonimuudatuste puhul, on ka server taaskäivitada.

Mod_Rewrite'i kasutamine võtab aega, kuid tulemused on seda väärt

Funktsiooni mod_rewrite kasutamine Apache'is nõuab kindlasti teatud pingutust. Peate pabistama tekstipõhiste konfiguratsioonifailidega, nuputama viisi, kuidas saada nendesse failidesse väga peeneid regulaaravaldisi, ja teadma, kuidas teenust käsitsi peatada ja taaskäivitada. Tõenäoliselt nõuab see palju katseid ja vigu, enne kui saate midagi, mis ei too kaasa viga ja käitub õigesti.

See tähendab, et kui olete selle ära tundnud, saate mod_rewrite'ist suurt kasu. Teie külastajad mäletavad paremini teie URL-e ja teie paremusjärjestus Google'is paraneb. Saadud "ilusad URL-id" pole ju ainult näitamiseks. Need on ka funktsionaalsed.

instagram story viewer