mod_speling Tente de corriger les erreurs de casse dans les URLs ou les erreurs d'écriture mineures. Extension mod_speling.c speling_module

Il arrive que des requêtes pour des documents ne puissent pas être traitées par le serveur Apache de base à cause d'une erreur d'orthographe ou de majuscule. Ce module permet de traiter ce problème en essayant de trouver un document correspondant, même lorsque tous les autres modules y ont renoncé. Sa méthode de travail consiste à comparer chaque nom de document du répertoire demandé avec le document de la requête sans tenir compte de la casse, et en acceptant jusqu'à une erreur (insertion, omission, inversion de caractère ou caractère erroné). Une liste de tous les documents qui correspondent est alors élaborée en utilisant cette stratégie. Ce module traite aussi les erreurs dans les extensions de fichiers.

Si après le parcours du répertoire,

CheckSpelling Active le module de correction CheckSpelling on|off CheckSpelling Off server config virtual host directory .htaccess Options

Cette directive permet d'activer ou de désactiver le module de correction. Lorsqu'il est activé, rappelez-vous que :

  • le parcours du répertoire nécessaire à la correction aura un impact sur les performances du serveur lorsque de nombreuses corrections devront être effectuées au même moment.
  • l'arborescence ne doit pas contenir de documents sensibles qui pourraient être considérés par erreur comme correspondant à la requête.
  • le module ne corrige pas les noms d'utilisateur mal orthographiés (comme dans http://mon.serveur/~apahce/), mais seulement les noms de fichiers ou de répertoires.
  • les corrections s'appliquent strictement aux fichiers existants, si bien qu'une requête pour <Location /status> pour être traitée de manière incorrecte comme une requête pour le fichier négocié "/stats.html".

mod_speling ne doit pas être activé pour des répertoires où DAV l'est aussi, car il va essayer de "corriger" les noms des ressources nouvellement créées en fonction des noms de fichiers existants ; par exemple, lors du chargement d'un nouveau document doc43.html, il est possible qu'il redirige vers un document existant doc34.html, ce qui ne correspond pas à ce que l'on souhaite.

CheckCaseOnly Limite l'action du module aux corrections de majuscules CheckCaseOnly on|off CheckCaseOnly Off server config virtual host directory .htaccess Options

Lorsqu'elle est définie à "on", cette directive permet de limiter l'action du module aux inversions majuscule/minuscule. Les autres corrections ne sont pas effectuées sauf si la directive CheckBasenameMatch est aussi à "on"..

CheckBasenameMatch Vérifie aussi la correspondance des fichiers, même avec des extensions différentes CheckBasenameMatch on|off CheckBasenameMatch On server config virtual host directory .htaccess Options

Cette option n'a aucun effet si CheckCaseOnly a été défini.

Lorsqu'elle est définie, cette directive étend le processus de correction orthographique à l'extension des noms de fichiers. Par exemple, un fichier de nom foo.gif sera pris en compte par une requête pour foo ou foo.jpg. Ceci peut s'avérer particulièrement utile en conjonction avec les MultiViews.