Rewrite engine

Rewrite engine (přepisovací engine) je modul (volitelná část, která se spustí po překompilování nebo změně nastavení) webovém serveru, který umožňuje:

  • vyhodnocovat cílová URL, vyžadovaná na daném webserveru, a
  • přesměrovávat požadavky serveru
  • zasílat třímístný tzv. HTTP Status Code serveru (např. 200 – OK, 404 – Not Found,…[1])
  • zamezit nebo naopak povolit přístup z definovaných adres a vytvářet tato pravidla pro různé soubory, skupiny souborů nebo adresáře

a případně další

Jednodušší přepisovací enginy některé z těchto pokročilých funkcí nemají, ale vždy by měly být schopny alespoň přesměrovávat požadavky, které dorazí na server. Naopak složitější přepisovací enginy nabízejí další možnosti (vnitřní proměnné serveru, časové údaje) a testování, zda příchozí požadavek patří mezi URL dané podmínkou, probíhá pomocí regulárních výrazů.

Přepisovací engine většinou pracuje podle obsahu speciálního souboru, který může být umístěn v každém adresáři na webserveru (většinou se nazývá .htaccess). Tento soubor (skript) může obsahovat:

  • podmínky pro výběr požadované adresy
  • pravidla pro požadavky, které splňují podmínku
  • direktivy, popř. další prvky skriptu

Typickými aplikacemi použití přepisovacích enginů jsou tzv. clear url (user-friendly url, fancy url, „uživatelsky přívětivé url“ pro podporu SEO), vlastní zpracování chybových HTTP kódů nebo vyřízení trvalého přesměrování stránek (bez nutnosti existence jejich obsahu).

Některé přepisovací enginy

Apache HTTP server od Apache Software Foundation

  • mod rewrite, mod_rewrite pravděpodobně celosvětově nejpoužívanější přepisovací engine.
  • mod_alias jednodušší modul pro manipulaci a kontrolu nad požadavky, které dorazí na server.

Internet Information Server (IIS) od Microsoftu

  • IIS Mod-Rewrite od Micronovae
  • IISRewrite od Qwerksoft
  • ISAPI_Rewrite od isapirewrite.com
  • URL Replacer od Motobit
  • Ionic's ISAPI Rewrite Filter (IIRF) (open source) od Ionic Shade.

HttpModule pro Microsoft ASP.NET

  • UrlRewriter.NET Free, open-source package. Supports .NET 1.1 and 2.0.
  • URLRewriting.NET, free and open source supports, ASP.NET 2.0
  • VirtualUrl.NET for ASP.NET 2 Professional URL rewriting package.

Java 2 Platform, Enterprise Edition (J2EE) tzv. servery servlet contejnerů (jako Apache Tomcat, Resin, Orion atd):

  • HttpRedirectFilter (open source)
  • UrlRewriteFilter (open source – BSD) – umožňuje přepsat URL předtím než se dostanou k serveru

Odkazy

Reference

V tomto článku byl použit překlad textu z článku Rewrite engine na anglické Wikipedii.

  1. Status kódy na w3.org

Související články

Externí odkazy

  • Seriál mod_rewrite Archivováno 9. 2. 2008 na Wayback Machine. na owebu.cz
Pahýl
Pahýl
Tento článek je příliš stručný nebo postrádá důležité informace.
Pomozte Wikipedii tím, že jej vhodně rozšíříte. Nevkládejte však bez oprávnění cizí texty.