gpt4 book ai didi

asp.net - 如何在 IIS Express 下启用区分大小写?

转载 作者:行者123 更新时间:2023-12-04 22:15:56 24 4
gpt4 key购买 nike

如果使用 IIS Express,我应该如何启用区分大小写的请求处理? IIS Express 中是否有设置?或者 URL 重写规则可以做到这一点吗?或者可能是包罗万象的 HTTP 处理程序来进行案例检查?

目标是在部署到 IIS 和 S3(其中 S3 区分大小写)之前,能够在本地捕获与静态文件相关的大小写不一致。

谢谢

最佳答案

IIS 区分大小写...
...但不适用于文件。
IIS 不区分大小写是用词不当,不区分大小写的是 Windows 文件系统,而不是 IIS。如果 URL 包含文件路径,则 IIS 会询问 Windows 该文件是否存在,并且操作系统会在不考虑字母大小写的情况下做出响应。无法在 Windows 中“启用”文件名区分大小写。
但是对于真实文件路径以外的其他文件,IIS 是 100% 区分大小写的。 URL 字符的大小写原封不动地传递到 IIS 管道。是否存在区分大小写取决于 Web 应用程序。但好的做法是说你不想要 /page1不同于 /PAGE1 .
ASP.NET 对查询字符串变量名称不区分大小写。再说一次,这不是 IIS。不区分大小写的是应用程序 (ASP.NET)。
概括
静态文件路径不区分大小写(由于 Windows 操作系统,而不是 IIS):

http://example.com/sUbdiRectoRy/FILe.aspx
但是,不参与文件路径的 URL 部分是区分大小写的(下面的 file.aspx 之后的所有内容除了“x”参数,因为 .aspx 是 ASP.NET 资源):
http://example.com/sUbdiRectoRy/FILe.aspx/Extra/Tail?x="query parameter"
如果应用程序区分大小写,则通过重写、HttpModules 等动态生成的 URL 也是区分大小写的。这通常不是最佳实践,因为这两个 URL 会引用两个单独的网页:
http://example.com/2012/01/23/blog-article
http://example.com/2012/01/23/BLOG-ARTICLE

关于asp.net - 如何在 IIS Express 下启用区分大小写?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5811021/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com