使用 .htaccess 使 Apache 中的文件夹不区分大小写
我需要使服务器上的访问目录不区分大小写。
我该如何使用 htaccess 来做到这一点?
I need to make accessing directories on my server case insensitive.
How do I do that using htaccess?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
您必须在 apache 中安装并启用 mod_speling 模块,并在 .htaccess 中将 CheckCaseOnly 指令设置为 On
You have to install and enable the mod_speling module in apache and set the CheckCaseOnly Directive to On in your .htaccess
如果您希望请求的 URL 无论使用大写还是小写字母都有效,请使用 mod_speling 使 URL 不区分大小写。在.htaccess文件中写入以下代码:
If you want requested URLs to be valid whether uppercase or lowercase letters are used, use mod_speling to make URLs case-insensitive. Write the following code in .htaccess file:
这是我使用的,因为我的主机是共享的,不包含 mod_spelling 模块,但支持 .htaccess,但这仅适用于一个文件夹:
要重定向到的文件夹可以是任何情况,因此您可以使用小写文件夹和在那里重定向所有拼写变体。
我想它可以通过一点正则表达式进行调整,以适用于所有文件夹,而不仅仅是一个文件夹。这对我在 Apache 2.2.14 (Unix) 上有用。
This is what I used because my hosting is shared and does not include the mod_spelling module but does support .htaccess, but this only works for one folder:
The folder to redirect to can be any case, so you could use lower-case folders and redirect all variations of spelling there.
I suppose it could be adapted with a little bit of REGEX to work for all folders rather than just one. This worked for me on Apache 2.2.14 (Unix).
解决方案-1:要使请求的 URL 的目录和文件名不区分大小写,我们可以将以下两行添加到应用程序的 .htaccess 文件中:
解决方案-2:
同样,如果我们只想将一些预定义的目录转到特定目录,则应用以下行:
Solution-1: To make case-insensitive directory and files names with respect to the requested URL we can add the following two lines to the app's .htaccess file:
Solution-2:
Again if we want just a few predefined directories to go to specific directories, then apply the below lines instead: