Apache/08/1/5 URL-Korrektur
8.1.5 URL-Korrektur
- mod_speling
Eine etwas abenteuerliche Form der automatischen Weiterleitung steht Ihnen zur Verfügung, wenn Sie das Modul mod_speling (der »Fehler« im Namen ist Absicht) aktivieren: Wenn unter einer angeforderten URL kein Dokument zu finden ist, 3 Hochdeutsch: »Nein, so etwas haben wir aber nicht!« versucht es, ein Dokument mit einem ähnlichen Namen zu liefern und auf diese Weise Rechtschreibfehler in URLs zu korrigieren.
Das Modul ignoriert in einem ersten Schritt die Groß- und Kleinschreibung der angeforderten URL und akzeptiert im zweiten Schritt alle Varianten, die höchstens einen weiteren Fehler aus folgenden Kategorien enthalten:
- Zusätzliches Zeichen Angefordert wurde info.html; vorhanden ist nur infos.html.
- Fehlendes Zeichen Die angeforderte URL war books.html, aber nur book.html ist vorhanden.
- Falsches Zeichen Die Anfrage enthielt den Dateinamen test.html; lieferbar ist text.html.
- Dreher Der Client fragte irrtümlich nach speil.html; der Server kann spiel.html liefern.
- Andere Dateiendungen Der Client fordert index.html an; gefunden wird index.php.
Wenn nach einer entsprechenden Überprüfung des Verzeichnisses keine Variante gefunden wird, erhält der Client genau wie im Fall ohne mod_speling die Antwort 404 Not Found. Findet Apache genau ein passendes Dokument, liefert er es ohne weitere Nachfrage aus. Bei mehreren gleichwertigen Treffern wird dagegen eine Liste mit dem Status 300 Multiple Choices geliefert.
- CheckSpelling
- Korrektur von URL-Schreibfehlern aktivieren
- Seit Version 1.3 (vor 1.3.2 nur im Server- und VHost-Kontext)
- Modul mod_speling Kontext Server, <VirtualHost>, <Directory>, <Location>, <Files>, .htaccess (Options)
- Syntax CheckSpelling On|Off Standardwert Off
Die Funktionalität von mod_speling wird im entsprechenden Kontext und in seinen Unterkontexten nur dann aktiviert, wenn Sie sie mit dieser Direktive explizit einschalten:
CheckSpelling On
Bei Bedarf können Sie sie in einem untergeordneten Kontext wieder ausschalten, indem Sie dort folgende Anweisung einsetzen:
CheckSpelling Off CheckCaseOnly
Nur Änderung der Groß- und Kleinschreibung
Seit Version 2.2.0 Modul mod_speling Kontext Server, <VirtualHost>, <Directory>, <Location>, <Files>, .htaccess (Options) Syntax CheckCaseOnly On|Off Standardwert Off
Wenn Sie diese Direktive zusätzlich zu CheckSpelling On ebenfalls auf On setzen, wird die Funktionalität von mod_speling eingeschränkt: Es werden nur noch Änderungen in der Groß- und Kleinschreibung vorgenommen; alle anderen Optionen werden ausgeschaltet.