今天在测试Email Ticket的时候发现在进行Mark as Read/Unread操作时,请求是通过GET方式进行的。URL中列出了所有参与该操作的Ticket Id。于是,我想起GET请求是有最大长度限制的。遂输入超长一串Ticket Id进行请求,结果页面报错如下:
复制代码 代码如下:
Request-URI Too Large
The requested URL's length exceeds the capacity limit for this server.
经过一番搜索之后,发现IIS 7对于Query String有长度限制。默认为2048.
该问题的解决办法可以通过修改configuration/system.webServer/security/requestFiltering/requestLimits@maxQueryString setting.
复制代码 代码如下:
<requestLimits maxQueryString="length" />
具体可以查看微软KB: Error message when you visit a Web site that is hosted on a server that is running IIS 7.0: "HTTP Error 404.15 – Not Found"
搜索过程中发现,各浏览器与各Web Server对URL均有长度的限制如下:
在http协议中,其实并没有对url长度作出限制,往往url的最大长度和用户浏览器和Web服务器有关,不一样的浏览器,能接受的最大长度往往是不一样的,当然,不一样的Web服务器能够处理的最大长度的URL的能力也是不一样的。
下面就是对各种浏览器和服务器的最大处理能力做一些说明.
复制代码 代码如下:
Microsoft Internet Explorer (Browser)
IE浏览器对URL的最大限制为2083个字符,如果超过这个数字,提交按钮没有任何反应。在我的测试中,这个数字得到验证。
复制代码 代码如下:
Microsoft Internet Explorer has a maximum uniform resource locator (URL) length of 2,083 characters. Internet Explorer also has a maximum path length of 2,048 characters. This limit applies to both POST request and GET request URLs.
If you are using the GET method, you are limited to a maximum of 2,048 characters, minus the number of characters in the actual path.
However, the POST method is not limited by the size of the URL for submitting name/value pairs. These pairs are transferred in the header and not in the URL.
微软官方也有说明:
Firefox (Browser)
对于Firefox浏览器URL的长度限制为65,536个字符,但当我测试时,最大只能处理8182个字符,这是因为url的长度除了浏览器限制外,还会受Web服务器的限制,而我本机使用的是ubuntu apache服务器,最大处理能力为8192个字符(相差10个字符,不知道是什么原因),一旦超过这个长度,服务器就返回如下错误信息。
Safari (Browser)
URL最大长度限制为 80,000个字符。
Opera (Browser)
URL最大长度限制为190,000个字符。
Google (chrome)
url长度一旦超过8182个字符时,出现如下服务器错误:
写道
复制代码 代码如下:
Request-URI Too Large
The requested URL's length exceeds the capacity limit for this server.
Apache/2.2.12 (Ubuntu) Server at 127.0.1.1 Port 80
Apache (Server)
能接受最大url长度为8,192个字符,但我的测试数据是8,182,10个字符,差别不在,数据具体符合。
Microsoft Internet Information Server(IIS)
能接受最大url的长度为16,384个字符。
通过上面的数据可知,为了让所有的用户都能正常浏览,我们的URL最好不要超过IE的最大长度限制(2038个字符),当然,如果URL不直接提供给用户,而是提供给程序调用,侧这时的长度就只受Web服务器影响了。
注:可能有些朋友会想当然的认为,如果最大长度限制为2038字符,是不是参数差不多可以传递1000个左右的汉字。这样认为其实是不对的,对于中文的传递,最终会为urlencode后的编码形式进行传递,如果浏览器的编码为UTF8的话,一个汉字最终编码后的字符长度为9个字符。
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
RTX 5090要首发 性能要翻倍!三星展示GDDR7显存
三星在GTC上展示了专为下一代游戏GPU设计的GDDR7内存。
首次推出的GDDR7内存模块密度为16GB,每个模块容量为2GB。其速度预设为32 Gbps(PAM3),但也可以降至28 Gbps,以提高产量和初始阶段的整体性能和成本效益。
据三星表示,GDDR7内存的能效将提高20%,同时工作电压仅为1.1V,低于标准的1.2V。通过采用更新的封装材料和优化的电路设计,使得在高速运行时的发热量降低,GDDR7的热阻比GDDR6降低了70%。
更新日志
- 蔡琴《蔡琴经典歌曲合集》[WAV+CUE][502.6MB]
- 林志颖.1992-不是每个恋曲都有美好回忆(首专)【飞碟】【WAV+CUE】
- 群星.2020-一首歌一个故事(赵英俊某些作品重唱企划)【奔跑怪物】【FLAC+CUE】
- 戴军.1995-阿莲·新娘【大藏艺术】【WAV+CUE】
- [ABC唱片]-《吉姆·里夫斯-发烧精逊[HDS-257][6N纯银镀膜CD][低速原抓WAV+CUE]
- 【新世纪电子(P)】Beamy-2024-SunsetSerenades(FLAC)
- 古巨基2006-HUMAN我生2CD[香港][WAV整轨]
- 吴淑敏.1995-少女的期待【福和唱片】【WAV+CUE】
- 张栋梁.2008-FROM.NOW.ON新歌+精选2CD【维京】【WAV+CUE】
- 潘美辰.1995-原谅我改变(粤)【星光】【WAV+CUE】
- 半吨兄弟《迷人烟嗓》 [WAV+CUE][527.2MB]
- 孙燕姿《经典全纪录 主打精华版》[DSF][4G]
- 《阿杜6CD合集》[WAV分轨][5.8G]
- 古巨基2007-MOMENTS[香港][WAV整轨]
- 龙音海文版-小河淌水-陈爱娟古筝独奏之二[WAV+CUE]