在 .htaccess 中使用大写文件名显示小写 url

Show lowercase url in .htaccess with uppercase file names

在我的 .htaccess 文件中,我有这段代码:

RewriteMap tolowercase int:tolower 
RewriteRule ^(.*)$ ${tolowercase:} [R=301,L]

发件人:htaccess Uppercase URL to lowercase

这将 url 从大写更改为小写,对我来说效果很好。

我现在想要的只是让我的文件名保持大写,但是我的服务器打开文件(名称中有大写字母)并显示 url 没有大写字母。

我通过互联网和这个平台等搜索了解决方案,但我最终找到了解释如何将 url 转换为没有大写字母的 url 的页面。现在我也想要这个,但是他必须打开文件名中包含大写字母的文件。

所以基本上你想打开 URL 没有大写字母,所以它可以使用大写字母文件名?逻辑上是不可能的。大多数操作系统中的文件名都区分大小写。当您要求 text.txt 时,它可能指的是 Text.txtTEXT.txtTEXT.TXTtext.TXT 或不同的组合......服务器将如何决定哪一个?从逻辑上讲,您尝试做的事情没有任何意义,也不会起作用。 URL 重写不仅与 URL 栏中显示的内容有关,还会影响请求本身。

解决方案是将地址栏中的 URL 更改为 JavaScript(在服务器处理请求后),但想象一下有人想要刷新站点 - 将换行直到和上面一样的问题。