应用程序错误导致我们设置一个太大的cookie。
客户得到一个错误,发生在我们的应用程序正在执行(mod_python)之前。
在apache中有没有可调节的限制,可以有多大的cookie头?
在apache错误日志中,我看到: request failed: error reading the headers
请参阅Apacheconfiguration中的LimitRequestLine指令 。 默认值是8190,所以比这更大的值有可能导致问题。
该指令设置HTTP请求行允许的字节数。
LimitRequestLine指令允许服务器pipe理员减less或增加客户端HTTP请求行允许的大小限制。 由于请求行由HTTP方法,URI和协议版本组成,因此LimitRequestLine指令对服务器上请求所允许的请求URI的长度进行了限制。 服务器需要这个值足够大以容纳其任何资源名称,包括可能在GET请求的查询部分中传递的任何信息。
此指令使服务器pipe理员可以更好地控制exception的客户端请求行为,这对于避免某些forms的拒绝服务攻击可能是有用的。
我相信这是网页上所有cookie的总和的限制,而不仅仅是一个单独的cookie(虽然不是正面的)。 但是一个网站的所有cookie都是使用一个请求头传输的,所以如果网页上有足够的cookie,并且总和超过了LimitRequestLine指令的值,就会出现问题。