区分大小写仅为全部小写或全部大写?

时间:2016-07-06 22:01:22

标签: php case-sensitive case-insensitive mod-speling

在我的CMS中,我使用PHP代码进行了样式调整。

<img src="/var/thumbs<?= $next_page_url ?>.JPG" height="50" alt="Next">

有以下现象:

如果文件名同时包含大写和小写字母(PIC123a.jpg),则不起作用。如果文件名只有大写(PIC123.JPG)或只有小写(pic-test.jpg),那就可以了。

如果我使用.htaccess中的条目,它也可以使用混合的大写和小写字母。

<IfModule mod_speling.c>
  CheckCaseOnly On
  CheckSpelling On
</IfModule>

但是我想知道为什么没有这些.htaccess条目它们将不起作用,分别只有大写或只有小写。

PS:CMS只有var $next_page_url,而不是$next_page_item。我不想制作太多的PHP黑客。

---编辑---更多信息---

没有htaccess条目:

如果文件扩展名大写且文件名大写(PIC123.JPG)=它有效

如果文件扩展名小写且文件名小写(pic-test.jpg)=它可以正常工作

如果文件扩展名小写且文件名大写(PIC123.jpg)=不起作用

1 个答案:

答案 0 :(得分:2)

每当你点击一个网址时,就意味着你正在点击像apache或nginx这样的服务器。 php本身不是服务器。它只处理请求btu这些请求首先由web服务器处理,如apache或nginx

CheckSpelling操作使Apache执行更多的工作来查找匹配项,例如纠正常见的拼写错误

这就是为什么这块代码用于执行任务的原因

<IfModule mod_speling.c>
  CheckCaseOnly On
  CheckSpelling On
</IfModule>

得到它? :)

快乐的编码!