鸽鸽经验网

 找回密码
 立即注册
搜索
热搜: 经验 技巧 心得
开启左侧

网址(URL)支持的最大长度是多少?最优先大支持多少个字符?

[复制链接]
msmkmm2012VIP会员 发表于 2019-7-12 18:12 | 显示全部楼层 |阅读模式

今天在测试E T的时候发现在进行M  RU操作时,请求是通过GET方式进行的。URL中列出了所有参与该操作的T I。于是,我想起GET请求是有最大长度限制的。遂输入超长一串T I进行请求,结果页面报错如下:  码蚁之家
复制代码 代码如下
R-URI T L
T  URL'        

经过一番搜索之后,发现IIS 对于Q S有长度限制。默认为
该问题的解决办法可以通过修改[email protected]
复制代码 代码如下
&;L QS="" &;

具体可以查看微软KB: E      W           IIS  "HTTP E  – N F"
搜索过程中发现,各浏览器与各W S对URL均有长度的限制如下:
在协议中,其实并没有对长度作出限制,往往的最大长度和用户浏览器和W服务器有关,不一样的浏览器,能接受的最大长度往往是不一样的,当然,不一样的W服务器能够处理的最大长度的URL的能力也是不一样的。
下面就是对各种浏览器和服务器的最大处理能力做一些说明
复制代码 代码如下
M I E (B)

IE浏览器对URL的最大限制为个字符,如果超过这个数字,提交按钮没有任何反应。在我的测试中,这个数字得到验证。
复制代码 代码如下
M I E       (URL)   ,  I E        ,  T     POST   GET  URL
I     GET ,        , ,         
H,  POST          URL     T           URL

微软官方也有说明:

F (B)
对于F浏览器URL的长度限制为,个字符,但当我测试时,最大只能处理个字符,这是因为的长度除了浏览器限制外,还会受W服务器的限制,而我本机使用的是 服务器,最大处理能力为个字符(相差个字符,不知道是什么原因),一旦超过这个长度,服务器就返回如下错误信息。
S (B)
URL最大长度限制为 ,个字符。
O (B)
URL最大长度限制为,个字符。
G ()
长度一旦超过个字符时,出现如下服务器错误:
写道

复制代码 代码如下
R-URI T L
T  URL'        
A (U) S   P

A (S)
能接受最大长度为,个字符,但我的测试数据是,,个字符,差别不在,数据具体符合。
M I I S(IIS)
能接受最大的长度为,个字符。
通过上面的数据可知,为了让所有的用户都能正常浏览,我们的URL最好不要超过IE的最大长度限制(个字符),当然,如果URL不直接提供给用户,而是提供给程序调用,侧这时的长度就只受W服务器影响了。
注:可能有些朋友会想当然的认为,如果最大长度限制为字符,是不是参数差不多可以传递个左右的汉字。这样认为其实是不对的,对于中文的传递,最终会为后的编码形式进行传递,如果浏览器的编码为UTF的话,一个汉字最终编码后的字符长度为个字符。
回复

使用道具 举报

免责声明|联系我们|鸽鸽经验网 ( 豫ICP备17031277号 )

GMT+8, 2019-7-24 16:49

Powered by Discuz! 7.0

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表