mod_speling
描述: | 尝试通过忽略大小写或尝试纠正各种轻微的拼写错误来纠正错误的 URL。 |
状态: | 延期 |
模块标识符: | speling_module |
源文件: | mod_speling.c |
摘要
核心 apache 服务器有时无法提供对文档的请求,因为请求拼写错误或资本错误。该模块通过尝试查找匹配的文档来解决此问题,即使在所有其他模块放弃之后也是如此。它通过将请求目录中的每个文档 name 与请求的文档 name 进行比较而不考虑案例,并允许最多一个拼写错误(字符插入/省略/转置或错误字符)来完成其工作。使用此策略匹配所有文档名称的列表。
如果,在扫描目录后,
- 找不到匹配的文档,Apache 将照常执行并 return“找不到文档”错误。
- 只发现一个文档“几乎”匹配请求,然后以重定向响应的形式返回。
- 找到多个具有 close match 的文档,然后将匹配列表返回给 client,client 可以选择正确的候选项。
CheckCaseOnly 指令
描述: | 限制拼写模块对案例更正的操作 |
句法: | CheckCaseOnly on\|off |
默认: | CheckCaseOnly Off |
Context: | server config,virtual host,directory,.htaccess |
覆盖: | 选项 |
状态: | 延期 |
模块: | mod_speling |
设置时,此指令将拼写更正的操作限制为 lower/upper 大小写更改。不执行其他可能的更正。
CheckSpelling 指令
描述: | 启用拼写模块 |
句法: | CheckSpelling on\|off |
默认: | CheckSpelling Off |
Context: | server config,virtual host,directory,.htaccess |
覆盖: | 选项 |
状态: | 延期 |
模块: | mod_speling |
该指令启用或禁用拼写模块。启用后,请记住这一点
- 当必须在同一时间执行多次拼写更正时,拼写更正所需的目录扫描将对服务器的 performance 产生影响。
- 文档树不应包含敏感的 files,它们可能会被拼写“更正”无意中匹配。
- 模块无法更正拼写错误的用户名(如
http://my.host/~apahce/
),只能更正文件名或目录名。 - 拼写更正严格适用于现有的 files,因此对
<Location "/status">
的请求可能会被错误地视为协商文件“/stats.html
”。
不应在启用DAV的目录中启用 mod_speling,因为它会尝试在现有文件名 e.g 上“拼写修复”新创建的资源名称,当尝试上传新文档doc43.html
时,它可能会重定向到现有文档doc34.html
,这不是意图是什么。