很多人都在问“URL的最大长度是多少?”但据我所知,没有人会问这个问题:
URL路径中的段的最大安全长度应该是什么?
我认为这个问题同样重要。
这个问题是一个一般性问题,目的是尽可能支持尽可能多的系统。
在C#中,您可以从传入的请求中获得URL路径段的列表,并且安装了安全模块--对于这种情况,在URL路径中的段的最大长度可以是多少?
我在下面的页面上看到,超过260个字符的URL路径段可能会在自定义ASP.NET模块中造成问题:
在网络浏览器中,无论访问哪个网站,都可以输入URL段,/是一个URL路径段,通常映射到主页。由于Internet Explorer、Chrome和Firefox是流行的浏览器,它们支持的URL路径段长度的最大长度是多少?
我从以下资源中可以看出,不同浏览器的URL路径的最大长度不同,有时这个数字相当高:
但这是一条路径,而不是路径段。
我还注意到,当重写路径时,底层文件系统路径长度开始发挥作用,我所能看到的支持的大概是255个字符在*nix操作系统中。
其他注意事项包括数据库表中URL路径段的最大长度。例如,在MySQL中,varchar列最多可以包含255个字符,但是否存在这样的情况:人们是将路径段存储在MySQL中的表中,还是将完整的URL存储在varchar列中?这是否意味着255个字符对于URL路径段来说太长了?
在我找不到任何东西的情况下,是否有关于URL路径段可以持续多长时间的W3C规范?
我确实在URI上阅读了W3C规范,但我还是没有发现任何有用的地方:
我很困惑,对于URL路径段的长度没有设定的标准,所以我可能遗漏了什么?
我真的在寻找尽可能多的关于不同系统支持的信息,以及URL路径段的安全长度。
发布于 2015-11-16 10:42:43
可能与不同浏览器中URL的最大长度是多少?有关
总之
根据HTTP规范,URL的长度没有限制。将您的URL保持在2048个字符以下;这将确保URL在所有客户端和服务器配置中工作。此外,像URL这样的搜索引擎将保持在大约2000字符以下。
Chrome的URL限制为2MB,IE8和9的字符限制为2084。因此,所有的点,保持您的URL限制在大约。2000字。
此外,从可用性的角度来看,长期不能为用户所用/不可读的URL.
然而,域名有一个最大值。长度255个字符。为了安全起见,最大限度。一个URL段的长度大约为1745个字符,假设您的URL存在于一个段中.
发布于 2015-11-09 18:35:54
没有这样的规格限制。可能存在实现限制,但在规范中找不到这些限制。
Nit: URI是由IETF定义的,而不是W3C,当前的规范是RFC 3986。
发布于 2015-11-10 09:48:21
URL长度不应该超过2K (只是常见的做法)。段路径可以是任意大小的。
域长度不应超过255个字符(参见RFC3986)。限制只存在于执行方面。附加在URL上的段仅在特定情况下(旧的常见用途)受到限制。
现在,几乎所有的请求都经过一个http://web.archive.org/web/20180819034451/https://www.addedbytes.com/blog/url-rewriting-for-beginners/文件,所以段长并不重要。在此之后,段被保存在一个可以非常大的变量中,所以基本上没有限制。
https://stackoverflow.com/questions/29458445
复制相似问题