创建不区分大小写的 apache 别名

创建不区分大小写的 apache 别名

我目前正在使用 Apache 2.4.4。现在的问题是,当我创建别名时

Alias /mysite "D:/MySite"

它不适用于http://127.0.0.1/MySite。那么我怎样才能使它不区分大小写呢?

答案1

不是,但它应该像这样Alias工作:AliasMatch

AliasMatch (?i)^/MySite(.*) "D:/MySite/$1"

答案2

我不知道你是否可以,但你不应该。 RFC 3986在 s3.2.2 中明确指出,URI 的主机名部分不区分大小写:

主机子组件不区分大小写

但在 s3.3 中没有类似的注释,它管理 URI 的 Path 组件。此外,s6.2.3 指出

一些方案定义了由不区分大小写的数据组成的附加子组件
,从而隐式许可规范化器将
这些数据转换为常见大小写(例如,全部小写)。

这两个情况都强烈地暗示我,不区分大小写并不是 URI 中大多数部分的正常组成部分。很抱歉,Windows 让您期望文件系统不区分大小写,但事实上这不是常态,建议您避免尝试使其成为常态。

相关内容