Heim >Backend-Entwicklung >PHP-Tutorial >javascript - HTML 响应头返回错误问题,欢迎探讨。net::ERR_RESPONSE_HEADERS_TOO_BIG

javascript - HTML 响应头返回错误问题,欢迎探讨。net::ERR_RESPONSE_HEADERS_TOO_BIG

WBOY
WBOYOriginal
2016-06-06 20:23:472617Durchsuche

---更新---
更新一下为什么会request header 产生这么多信息的原因;
是这样的,我在一个长循环(几万次)的方法里面写了session_write_close();每循环一次就解一次session锁,这样就能运行其他页面了~但是这样就会在header头里面产生一堆的session记录,这个问题能解决吗?我也在找PHP清除header记录之类的~暂时没找到~
//--------------第一次编辑-------------------------//
今天做web请求遇到一个很有意思的错误~
我发了一个ajax请求,但是失败了,然后我去看了控制台request herders..报的错误是

<code>Provisional headers are shown</code>

请求超时了,然后我设置了ajax timeout: 100000000,但是还是不行,后来我在console里看到这个错误;

<code class="html">net::ERR_RESPONSE_HEADERS_TOO_BIG</code>

然后搜了一下,这个错误的资料比较少,然后google到了这个问题的大概
Error 325

It looks like Chrome (used with FirePHP4Chrome) has the lowest limit for headers size according to StackOverflow of 256kb for all headers.

就是说headers返回的大小限制是256kb;然后找到了C++有个设置响应头允许最大长度的方法,但是没有找到PHP的。
HttpWebRequest.MaximumResponseHeadersLength 属性

(⊙v⊙)嗯.........我的问题就是想问问PHP里面怎么设置request头相关的函数,还有如果有http header相关的知识或者书籍资料也可以推荐一下啊~

回复内容:

---更新---
更新一下为什么会request header 产生这么多信息的原因;
是这样的,我在一个长循环(几万次)的方法里面写了session_write_close();每循环一次就解一次session锁,这样就能运行其他页面了~但是这样就会在header头里面产生一堆的session记录,这个问题能解决吗?我也在找PHP清除header记录之类的~暂时没找到~
//--------------第一次编辑-------------------------//
今天做web请求遇到一个很有意思的错误~
我发了一个ajax请求,但是失败了,然后我去看了控制台request herders..报的错误是

<code>Provisional headers are shown</code>

请求超时了,然后我设置了ajax timeout: 100000000,但是还是不行,后来我在console里看到这个错误;

<code class="html">net::ERR_RESPONSE_HEADERS_TOO_BIG</code>

然后搜了一下,这个错误的资料比较少,然后google到了这个问题的大概
Error 325

It looks like Chrome (used with FirePHP4Chrome) has the lowest limit for headers size according to StackOverflow of 256kb for all headers.

就是说headers返回的大小限制是256kb;然后找到了C++有个设置响应头允许最大长度的方法,但是没有找到PHP的。
HttpWebRequest.MaximumResponseHeadersLength 属性

(⊙v⊙)嗯.........我的问题就是想问问PHP里面怎么设置request头相关的函数,还有如果有http header相关的知识或者书籍资料也可以推荐一下啊~

respond header too big这个证明你数据放错了地方啊,一般来讲respond里面多的就是url了,还有一些乱七八糟的数据,最多也就几个kb那么大。256kb已经很多了。如果你有很大的数据要返回的话,得放在body里面

我来补充一下php里面设置http header的方法:

<code class="php">header("Cache-Control: max-age=86400");
header("Content-type: application/octet-stream");</code>
Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn