我的服务器是区分大小写的,我想把它变成不敏感的。
我的意思的例子是
假设我上传 Fruit.php
那么去这个文件不会工作:
www.website.com/fruit.php
但这个会:
www.website.com/Fruit.php
有没有办法Fruit.php 和fruit.php 会起作用吗?也与目录。即:
/ S cript/script.php
/script/ S cript.php
3 回答
您需要使用 mod_speling (sic) apache 模块:
http://httpd.apache.org/docs/1.3/mod/mod_speling.html
在 .htaccess
<IfModule mod_speling.c>
CheckCaseOnly On
CheckSpelling On
</IfModule>
CheckSpelling 操作员使 Apache 执行更复杂的工作来查找匹配项,例如纠正常见的拼写错误
区分大小写取决于文件系统,而不是 Apache。但是,有一个部分解决方案。mod_rewrite 可以将所有内容强制转换为小写(或大写),如下所示:
RewriteMap tolowercase int:tolower
RewriteRule ^(.*)$ ${tolowercase:$1}
参考:http ://httpd.apache.org/docs/2.2/mod/mod_rewrite.html#rewritemap
不幸的是,这仅在您的所有文件都是小写的情况下才有效,而您指定混合大小写的文件名 (Fruit.php)。您是否愿意将项目中的所有文件重命名为小写?
UNIX 服务器区分大小写——它们区分文件名和文件夹名中的大写和小写字母。因此,如果您将网站从 Windows 移动到 UNIX 服务器(例如,当您更改网络主机时),您可能会遇到一定数量的“找不到页面”错误(404 错误),因为目录和其他网站链接到您的有时会弄错大小写(通常以大写形式写文件夹名称的第一个字母等)。这个基于 javascript 的自定义 404 错误页面通过将 URL 转换为小写来解决问题。
您可以从http://www.forbrugerportalen.dk/sider/404casescript.js获取脚本
编码快乐!!!!!!!