cnzz统计代码引起的Bad Request - Request Too Long
问题起因
今天一位园友向我们反馈,用Chrome打开某些博客文章时,会出现"Bad Request - Request Too Long. HTTP Error 400. The size of the request headers is too long."的错误页面:
用IE, Firefox都没问题,唯有Chrome。
之前我们遇到过一次这样的问题,当时以为是偶然因素引起的Chrome问题,于是在"%LOCALAPPDATA%\Google\"中将Chrome的配置文件重命名,让Chrome重建配置,解决了问题。
今天,这个问题再次出现,就不能忽视了,必须找出问题的真正原因并找到解决办法。
解决过程
开始我们推测,可能是某些原因造成Chrome发出的请求头包含过多内容。查看Chrome请求的网址是正常的,也没发现Request Header的异常。既然没在Chrome找到问题的原因,那我们从服务端下手吧,请求长就长一点,只要能让用户看到正常的内容。
服务端IIS究竟在哪个地方返回这个错误的?开始以为是Request Filtering Module,调整了Request Limits设置不能解决问题,禁用Request Filtering Module也解决不了问题。
后来在IIS官方论坛的帖子HTTP 400. The size of the request headers is too long中得知,这个错误是Http.sys返回的,请求头长度限制是由注册表HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\HTTP\Parameters中的两个参数决定的:MaxFieldLength与MaxRequestBytes,缺省值都是16384字节,详见Http.sys registry settings for IIS。
由于修改这两个设置需要重启IIS(net stop http, net start http, iisreset),并且只是表面上解决问题,所以我们没有立即采取这个方法。又回过头来在Chrome中查看请求头,突然发现cookie的值好长。
进一步查看cookie:
很多cnzz_eid,这是cnzz统计代码产生的,可是我们在博客中没有使用cnzz。但是,有的用户博客自己加了cnzz的统计代码。我们检查了一些会产生"Bad Request - Request Too Long"的页面,的确有些加了cnzz的代码。
我们手动在Chrome中删除了一些带有cnzz_eid的cookie,问题就解决了。
原来是cnzz惹的祸!
为什么在IE与Firefox中不会出现这个问题呢?
可能是IE与Firefox对于request header过长的请求会自动截断;而Chrome对此置之不理。
小结
这篇文章分享的内容是:当IIS返回"Bad Request - Request Too Long. HTTP Error 400. The size of the request headers is too long."的错误时,说明客户端发出的请求头长度超出了Http.sys的限制,这个限制是由注册表"HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\HTTP\Parameters"中的两个参数MaxFieldLength与MaxRequestBytes决定的,默认值是16384字节。
转载于:https://www.cnblogs.com/dudu/archive/2012/06/06/bad_request_request_too_long.html
cnzz统计代码引起的Bad Request - Request Too Long相关推荐
- CNZZ 统计代码及作弊分析
CNZZ,中国站长联盟的论坛统计服务,是比较常用的~~ 现在我们来分析一下~~ 开通 CNZZ 的统计服务之后,可以获得一串统计代码,如下,是我的某主页的统计代码. <script src='h ...
- 隐藏CNZZ统计代码
CNZZ有很强大的统计能力,但是有些时候有不想显示"站长统计"或者那个一跳一跳的小图标,想把它们隐藏起来.可以通过如下代码隐藏. <div sytle="displ ...
- 隐藏51la、cnzz统计图标方法及隐藏统计代码方法
cnzz统计代码如下: <!-- 统计开始--> cnzz统计代码 <!-- 统计结束--> 这个是会显示官方图标的:现在只要用DIV给隐藏掉就OK了,代码前加<div ...
- php跳转 不能加cnzz统计,页面添加友盟(CNZZ)统计和事件追踪
1. 在页面中引入友盟(CNZZ)统计的 JS 代码 // 统计 var cnzz_protocol = (("https:" == document.location.proto ...
- php+pv统计代码实现,Laravel 10 行代码实现简单的网站 pv uv 统计
最近在优化博客呀,想做一个统计网站 pv uv 的功能,虽然有第三的统计平台再用,但还是想自己写一个啊. 其实统计的数据非常简单,就是网站的访问量丶访客量. public function __con ...
- python 字典字符串转字典——urllib.request.Request发送get,post请求,发送json参数
1.eval方法即可[字典字符串转字典] file_content = eval(file_content) 2.urllib.request.Request发送post请求,发送json参数 fro ...
- python网络爬虫系列(一)——urllib库(urlopen、urlretrieve、urlencode、parse-qs、urlparse和urlsplit、request.Request类)
urllib库 urllib库是Python中一个最基本的网络请求库.可以模拟浏览器的行为,向指定的服务器发送一个请求,并可以保存服务器返回的数据. 一.urlopen函数: 在Python3的url ...
- 从统计代码来谈JS加载的优化
我有这么一个职业病,每次发现页面很卡,不管谁的网站,都会F12调出Chrome控制台来调试,看看是什么原因导致. 原因其实不外乎这几种: 1.页面文档的加载 2.css/js 的加载 这边就 js 说 ...
- 安装51统计代码到html,51La 统计代码放到哪里??
近期很多站长都在咨询如何在自己的站点添加统计代码,下面为大家详细介绍具体的步骤: 一.如何获取统计代码 提供免费统计的网站有很多,比如:51la.雅虎.cnzz....等等,下面就以 51la 做例子 ...
最新文章
- 拒绝从入门到放弃_《Openstack 设计与实现》必读目录
- 网课助手浏览器版怎么更新_MIUI版本更新动态:跨屏协作来袭(第57期)
- SoapUI工具中的用户名和密码如何用net代码实现传入
- python调用sdk的文章_如何使用 python 接入虹软 ArcFace SDK
- vscode主题 webstorm_从 Emacs 和 Vim 到 VSCode
- 文件上传~Uploadify上传控件~续(多文件上传)
- 怎样才能算是在技术上活跃的小公司
- iOS数据库的使用(一):FMDB多线程
- vector_capl
- ssh框架超详细总结
- java 生成纯色图片_浅谈Java设置PPT幻灯片背景——纯色、渐变、图片背景
- 微信小程序uniapp高德开放平台路线规划1对多导航路线方法记录
- 视觉SLAM入门 -- 学习笔记 - Part3
- fNIRS在发育科学中的应用
- [转]信息安全相关理论题(二)
- 计算机网络故障与维护方法,试论计算机网络故障处理及维护方法
- Python 算法训练之摩斯电码
- 描写妙龄少女句子赏析
- Python由来以及用途
- Graph Theory 离散数学第六章