mod-rewrite
Richtlijnen verstrekt door mod-rewrite in Apache 2.4
Zoeken…
Syntaxis
- RewriteBase URL-pad
- RewriteCond TestString CondPattern
- Rewrite Engine aan | uit
- RewriteMap MapName MapType: MapSource
- RewriteOptions-opties
- RewriteRule patroonvervanging [vlaggen]
Lijst met beschikbare richtlijnen in Apache 2.4
Apache 2.4 biedt de volgende 6 richtlijnen via de mod_rewrite module:
- RewriteBase
- RewriteCond
- RewriteEngine
- RewriteMap
- RewriteOptions
- RewriteRule
De volgende richtlijnen, eerder beschikbaar in Apache 2.2, zijn verwijderd:
- RewriteLock
- RewriteLog
- RewriteLogLevel
Alle richtlijnen (met uitzondering van RewriteMap ) gedefinieerd door mod_rewrite kan worden toegestaan om override op een per-directory .htaccess via de AllowOverride FileInfo .
| Richtlijn | Context | Beschrijving |
|---|---|---|
| RewriteBase | directory, .htaccess | Stelt de basis-URL in voor het herschrijven per map |
| RewriteCond | Overal | Definieert voorwaarden waaronder de herschrijfactie zal plaatsvinden |
| RewriteEngine | Overal | Stelt de status van de herschrijfmotor in |
| RewriteMap | server configuratie, virtuele host | Definieert een toetszoekfunctie |
| RewriteOptions | Overal | Stelt speciale opties in voor de herschrijfmotor |
| RewriteRule | Overal | Definieert specifieke regels voor herschrijfmotor |
De context Everwhere betekent dat de richtlijn op een van de volgende vier locaties kan worden gedefinieerd:
- server configuratie
- virtuele host configuratie
- directory context
- .htaccess bestand
De richtlijnen RewriteLog en RewriteLogLevel zijn samengevoegd met de globale LogLevel richtlijn en zouden worden gebruikt als:
LogLevel rewrite:<level>
waarbij <level> een waarde is van trace8 (minst significant) om te emerg (meest significant). Deze lijst is hier beschikbaar.
RewriteBase en RewriteEngine
| Richtlijn | Standaard | Context | Beschrijving |
|---|---|---|---|
| RewriteBase | Geen | Directory, .htaccess | Stelt de basis-URL in voor het herschrijven per map |
| RewriteEngine | uit | overal | Herschrijfmotor voor runtime in- of uitschakelen |
RewriteBase
De richtlijn specificeert het URL-voorvoegsel dat moet worden gebruikt voor het vervangen van relatieve paden.
RewriteEngine
De richtlijn, indien off , zal geen runtime rewrite-verwerking uitvoeren. Deze regels worden niet overgenomen door de virtuele hosts (van serverconfiguratie) en moeten afzonderlijk worden gedefinieerd.
RewriteMap
De richtlijn definieert een functie die een sleutel opzoekt in de gedefinieerde kaart en de opzoeking vervangt door de vervanging van de kaart.
De toewijzingsfunctie wordt als volgt gedefinieerd met de RewriteMap richtlijn:
RewriteMap MAPNAME Type:Source
en waarnaar kan worden verwezen in een van de RewriteCond of RewriteRule richtlijnen om als vervangende gids te fungeren:
${ MAPNAME : KEY | DEFAULT }
Hierna volgen geldige waarden voor Type in de kaartdefinitie:
-
int- staat alleentoupper,tolower,escapeenunescape -
txt- zoekt een tekstbestand -
dbd- zoekt in een database met behulp van de SQLSELECTinstructie -
rnd- willekeurige opzoekingen uit tekstbestand -
dbm- vergelijkbaar mettxt, behalve dat dehttxt2dbmde gegevens moet converteren naar hashes -
fastdbd- zoekt in een database met behulp van SQLSELECTinstructie met caching