render("login.html") 忽略大小写的问题

我在项目中的有一个登录页面"Login.html", 注意这个页面的“L”是大写的,但是我在render("login.html"),或者render("logiN.html")都可以访问到这个页面, 貌似这个render()方法忽略了大小写, 我想问一下,这个是可配置的还是bug? 在服务器上是不行的不需严格大小写,我本地开发环境是 MAC eclipse 


评论区

杜福忠

2017-10-26 18:00

这个是Windows 在文件系统中记录大小写,但是在用户层屏蔽掉大小写是为了方便用户体验。Mac也是类似的。这样导致Win32的注册表和程序内部有大量的大小写不同的字符串,最典型的是C:\Windows的大小写。所以你不可能把系统全部设置为大小写敏感的,那样的话很多程序都无法运行了。
ObCaseInSensitive只是影响系统内核,是在Win32层面之下的。设置了这个只有在POSIX子系统里是可以看出作用来。Windows Server和Windows 10里都有。而POSIX没有图形API,所以现在都是命令行程序或Bash下跑的程序。

我也遇见了, 查了一下:
https://segmentfault.com/q/1010000007692759/a-1020000007692849

杜福忠

2017-10-26 18:08

所以有条开发规范是文件路径如果有大小写, 用 _下划线_隔开, 文件名_也是,这样开发时是什么情况,上线也没有问题

热门反馈

扫码入社