Ako nastaviť Mod_Rewrite

click fraud protection

The Apache webový server je jedným z hlavných stavebných prvkov Internetu, ktorý slúži webovým serverom a aplikáciám. Je to zložitý systém s mnohými možnosťami a jedným z najdôležitejších je modul prepisovania, alebo skrátene „mod_rewrite“. V tomto článku sa pozrieme na možnosti použitia mod_rewrite a potom preskúmame, ako ho nastaviť na vašom vlastnom webe založenom na serveri Apache.

Účel modulu Apache Rewrite

Účelom tohto modulu je prepisovanie adries URL rôznymi užitočnými spôsobmi. To znamená, že keď používatelia prídu na vaše webové stránky prostredníctvom jednej adresy URL (zadaním alebo výberom odkazu, ktorý ich obsahuje), dostanú sa na inú adresu URL. Existuje niekoľko dôvodov, prečo to môžete urobiť.

Presmerovanie používateľov

Mod_rewrite môžete použiť na presmerovanie používateľov zo starších, neaktuálnych stránok, ktoré sa môžu stále zobraziť vo výsledkoch vyhľadávania, na novšie a aktuálne stránky. Predpokladajme napríklad, že máte stránku na https://www.mysite.com/review2015; ak niekto na toto narazí ako na odkaz a vyberie ho, môžete ho použiť pomocou pravidla prepisu http://www.mysite.com/review2019.

instagram viewer

Ľahšie si pamätáte adresy URL

Pravdepodobne ste už videli odkazy súvisiace s elektronickým obchodom s podobnými adresami URL https://www.thestore.net/3d78654954c29ace998658. Vývojári používajú takéto štítky, aby zabezpečili, že položky majú jedinečný identifikátor, ale pre netechnické typy je ťažké si to zapamätať.

Pravidlo opätovného zápisu vám našťastie môže pomôcť zverejniť peknú adresu URL, napríklad https://www.thestore.net/notebooks/spiral/3-subject-spiral/, ktorá keď bude nasledovaná, privedie návštevníka k tej so škaredou URL.

Jedinečné názvy stránok

Na začiatku webu bolo bežné vidieť skutočný názov súborov stránok, keď ste navštívili web. Napríklad stránka „O nás“ na webe môže byť „ http://www.someguys.org/about.html."

Existuje však niekoľko dôvodov, ktoré už toľko nevidíte. Prvým je, že veľa webových stránok prevádzkujú systémy na správu obsahu, ktoré obsahujú iba hŕstku skutočných súborov stránok. Zvyšok obsahu sa pridáva dynamicky pri poskytovaní stránky, takže všetky stránky môžu vyzerať, že majú rovnakú adresu URL, napríklad „ http://www.someguys.org/index.php." Prepisovanie adries URL vám umožní vzhľad týchto samostatných stránok, zatiaľ čo na správu svojej webovej stránky stále používate dynamický CMS.

Zrozumiteľnejšie adresy URL

Vyhľadávače hodnotia stránky vyššie, ak majú ľahko zrozumiteľné adresy URL. To znamená, že pre webové stránky je výhodné mať adresu URL ako „ https://www.thecompany.com/services/consulting" namiesto " https://www.thecompany.com/index.php? section = services & page = consulting, „pretože posledná časť vyzerá skôr ako kód ako adresa URL.

Prepisovaním sa zaistí, že z pohľadu adresy URL budete vždy dávať prednosť tomu najlepšiemu.

Ako nastaviť mod_rewrite na vašom webe

Používanie prepisovania adries URL na serveri Apache vyžaduje dve hlavné zložky:

  • Povolenie skutočného prepisovacieho modulu v Apache
  • Zoznam potrebných pravidiel prepisovania v súbore .htaccess.

Zatiaľ čo použitie prepisovania URL platí rovnako pre iné webové servery ako IIS alebo nginx, mod_rewrite a nižšie uvedené metódy sa budú vzťahovať iba na Apache.

Povoliť funkciu prepisovania v Apache

Najskôr budete musieť v inštalácii Apache zapnúť funkciu prepisovania.

  1. Budete musieť zistiť, kde sa nachádza konfiguračný súbor vášho Apache. To bude závisieť od použitého inštalátora.

    • Vo Windows by ste mali hľadať adresár s názvom „/ conf“ v inštalačnom adresári Apache.
    • V populárnom inštalátore XAMPP pre macOS sa nachádza v priečinku / Applications / XAMPP / xamppfiles / apache2 / conf.
    • V systéme Linux by sa objavil v adresári / etc / apache2. V každom prípade hľadáte súbor s názvom „httpd.conf“, „http.conf“ alebo „apache2.conf“, aby ste ich mohli vyhľadať aj pomocou vyhľadávacej funkcie vášho operačného systému.
  2. Otvorte konfiguračný súbor v textovom editore, napríklad Poznámkový blok systému Windows alebo TextEdit v systéme macOS.

  3. Vyhľadajte riadok „#LoadModule rewrite_module modules / mod_rewrite.so“ a na začiatku odstráňte hashtag. Toto označuje komentár, čo znamená, že keď je tam, server Apache bude ignorovať všetko na danom riadku. Odstráňte hashtag a Apache nabudúce vykoná tento riadok pri spustení.

  4. Uložte konfiguračný súbor a reštartujte server Apache.

  5. Alternatívne v niektorých verziách systému Linux uvidíte niektoré adresáre ako „/ etc / apache2 / mods-available“. a „/ etc / apache2 / mods-enabled.“ Tieto obsahujú kúsky konfiguračných súborov, ktoré sú spojené dynamicky. V takom prípade môžete spustiť nasledujúce príkazy, aby ste najskôr povolili modul prepisovania a potom reštartovali server Apache:

    prepísať sudo a2enmod
    systemctl restart apache2
  6. Teraz je váš server Apache pripravený prepísať adresy URL za vás. Až teraz musíte povedať, ktoré z nich a za akých okolností majú prepísať.

Definovanie pravidiel Mod_Rewrite na vašom webe

Pravidlá pre mod_rewrite budete musieť definovať pomocou jazyka regulárneho výrazu. Našťastie je k dispozícii nejaká pomoc. Pre dané prepísanie, ktoré chcete povoliť, môžete použiť nástroj, ako je generátor pravidiel VisioSpark.

  1. Do poľa zadajte adresu URL, z ktorej chcete prepísať, tj. Ktorú zadá používateľ Od: lúka.

  2. Do. Zadajte adresu URL, ktorú chcete prepísať, t. J. Adresu, na ktorej používateľ skončí Komu: lúka.

    Generátory pravidiel prepisovania grafického používateľského rozhrania vám môžu ušetriť námahu pri učení sa RegEx
  3. Vyberte ovládací prvok Captcha a potom vyberte Choď. Generátor by potom mal poskytnúť výsledok začínajúci na „RewriteRule.

    Ak náhodou nájdete iný generátor, tieto kroky sa môžu mierne líšiť, ale dúfajme, že v rovnakom guľovom parku.

Zadanie pravidiel Mod_Rewrite pre vaše stránky

Je to teda skvelý spôsob, ako vytvoriť tieto pravidlá. Ale kam ich dáte?

Ak chcete na webovej stránke používať pravidlá, musíte v koreňovej časti webovej stránky vytvoriť súbor s názvom „.htaccess“. Je to do istej miery závislé od platformy, kde sú uložené súbory pre konkrétny web, ale na to, aby ste tam nasadili svoje webové stránky, to musíte najskôr zistiť.

Možno už existuje súbor s týmto názvom. Ak áno, super! Do tohto súboru môžete jednoducho pridať svoje riadky.

  1. Vytvorte nový textový súbor s názvom „.htaccess„v koreňovom adresári vášho webu.

  2. V prvom riadku zadajte nižšie uvedený kód. Toto oznámi serveru, že chcete povoliť prepisovanie pre aktuálny web.

    RewriteEngine je zapnutý
  3. Ďalej pridajte každý z riadkov, ktoré ste vytvorili pomocou generátora. Začiatok nášho súboru by vyzeral takto:

    RewriteEngine je zapnutý
    RewriteRule ^ notebooky / špirála / 3 predmety-špirála / $ / 3d78654954c29ace998658? &% {QUERY_STRING}
  4. Rovnako ako pri každej zmene konfigurácie servera Apache, je dobré server reštartovať.

Používanie Mod_Rewrite si vyžaduje čas, ale výsledky stoja za to

Používanie funkcie mod_rewrite na Apache si určite vyžaduje určité úsilie. Musíte sa popasovať s textovými konfiguračnými súbormi, prísť na spôsob, ako do týchto súborov dostať veľmi jemné regulárne výrazy, a vedieť, ako službu ručne zastaviť a reštartovať. Pravdepodobne to bude vyžadovať veľa pokusov a omylov, kým dostanete niečo, čo nevedie k chybe a správa sa správne.

To znamená, že akonáhle sa dostanete na kĺb, získate z mod_rewrite veľkú výhodu. Vaši návštevníci si budú lepšie pamätať vaše adresy URL a vaše hodnotenie v službe Google sa pravdepodobne zlepší. Výsledné „pekné adresy URL“ nie sú koniec koncov iba na predstavenie. Sú tiež funkčné.

instagram story viewer